Стартовый пул

This commit is contained in:
2024-04-02 08:46:59 +03:00
parent fd57fffd3a
commit 3bb34d000b
5591 changed files with 3291734 additions and 0 deletions

View File

@@ -0,0 +1,182 @@
unit rx_ext_test_case_1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, fpcunit, testutils, testregistry, rxmemds, Dialogs;
type
{ TTCRxMemDataLifecycle }
TTCRxMemDataLifecycle= class(TTestCase)
protected
procedure SetUp; override;
procedure TearDown; override;
published
procedure TestHookUp;
procedure TestSave;
end;
implementation
uses
db, ex_rx_datapacket;
procedure TTCRxMemDataLifecycle.TestHookUp;
var
ads : TRxMemoryData;
aField : TField;
i : integer;
begin
ads := TRxMemoryData.Create(nil);
aField := TIntegerField.Create(nil);
aField.FieldName:= 'IntegerField1';
aField.Name := 'adsIntegerField1';
aField.DataSet := ads;
aField := TStringField.Create(nil);
aField.FieldName:= 'StringField1';
aField.Name := 'adsStringField1';
aField.Size := 20;
aField.DataSet := ads;
aField := TFloatField.Create(nil);
aField.FieldName:= 'FloatField1';
aField.Name := 'adsFloatField1';
aField.DataSet := ads;
ads.Open;
for i := 0 to 500 do
begin
ads.AppendRecord([i,'Name '+ IntToStr(i), 200 + (i*0.1)]);
end;
ads.First;
i:= 0;
while not ads.EOF do
begin
AssertTrue('Integer is incorrect ' + IntToStr(i), ads.FieldByName('IntegerField1').AsInteger = i);
AssertTrue('Float is incorrect ' + IntToStr(i), ads.FieldByName('FloatField1').AsFloat - (200 + (i*0.1)) < 0.01);
AssertTrue('String is incorrect ' + IntToStr(i), ads.FieldByName('StringField1').AsString = 'Name '+ IntToStr(i));
inc(i);
ads.Next;
end;
end;
procedure TTCRxMemDataLifecycle.TestSave;
var
ads1,ads2 : TRxMemoryData;
aField : TField;
i : integer;
sMemoTest : String;
begin
ads1 := TRxMemoryData.Create(nil);
ads2 := TRxMemoryData.Create(nil);
aField := TIntegerField.Create(nil);
aField.FieldName:= 'IntegerField1';
aField.Name := 'adsIntegerField1';
aField.DataSet := ads1;
aField := TStringField.Create(nil);
aField.FieldName:= 'StringField1';
aField.Name := 'adsStringField1';
aField.Size := 20;
aField.DataSet := ads1;
aField := TFloatField.Create(nil);
aField.FieldName:= 'FloatField1';
aField.Name := 'adsFloatField1';
aField.DataSet := ads1;
// TBooleanField
aField := TBooleanField.Create(nil);
aField.FieldName:= 'BooleanField1';
aField.Name := 'adsBooleanField1';
aField.DataSet := ads1;
// TDateTimeField
aField := TDateTimeField.Create(nil);
aField.FieldName:= 'DateTimeField1';
aField.Name := 'adsDateTimeField1';
aField.DataSet := ads1;
// TMemoField
aField := TMemoField.Create(nil);
aField.FieldName:= 'MemoField1';
aField.Name := 'adsMemoField1';
aField.Size:= 600;
aField.DataSet := ads1;
// TCurrencyField
aField := TCurrencyField.Create(nil);
aField.FieldName:= 'CurrencyField1';
aField.Name := 'adsCurrencyField1';
aField.DataSet := ads1;
ads1.Open;
ads2.Open;
sMemoTest := 'memo1';
for i := 0 to 500 do
begin
ads1.AppendRecord([i,'Name '+ IntToStr(i), 200 + (i*0.1),(i div 2) = 1, EncodeDate(2011,10,03) + i, sMemoTest, 1000 + (i*0.1)]);
sMemoTest := sMemoTest + 'a';
end;
ads1.SaveToFile('/tmp/testfile.xml',dfXML);
ads2.LoadFromFile('/tmp/testfile.xml',dfXML);
ads2.First;
sMemoTest := 'memo1';
i:= 0;
while not ads2.EOF do
begin
AssertTrue('Integer is incorrect ' + IntToStr(i), ads2.FieldByName('IntegerField1').AsInteger = i);
AssertTrue('Float is incorrect ' + IntToStr(i), ads2.FieldByName('FloatField1').AsFloat - (200 + (i*0.1)) < 0.01);
AssertTrue('String is incorrect ' + IntToStr(i), ads2.FieldByName('StringField1').AsString = 'Name '+ IntToStr(i));
AssertTrue('Currency is incorrect ' + IntToStr(i), ads2.FieldByName('CurrencyField1').AsFloat - (1000 + (i*0.1)) < 0.01);
AssertTrue('DateTime is incorrect ' + IntToStr(i), ads2.FieldByName('DateTimeField1').AsDateTime = EncodeDate(2011,10,03) + i);
AssertTrue('Memo is incorrect ' + IntToStr(i) + ads2.FieldByName('MemoField1').AsString, StrComp(Pchar(ads2.FieldByName('MemoField1').asString),Pchar(sMemoTest)) = 0);
sMemoTest := sMemoTest + 'a';
inc(i);
ads2.Next;
end;
ads1.Free;
ads2.Free;
end;
procedure TTCRxMemDataLifecycle.SetUp;
begin
end;
procedure TTCRxMemDataLifecycle.TearDown;
begin
end;
initialization
RegisterTest(TTCRxMemDataLifecycle);
end.

View File

@@ -0,0 +1,243 @@
<?xml version="1.0" encoding="UTF-8"?>
<CONFIG>
<ProjectOptions>
<Version Value="9"/>
<General>
<MainUnit Value="0"/>
<ResourceType Value="res"/>
<UseXPManifest Value="True"/>
</General>
<i18n>
<EnableI18N LFM="False"/>
</i18n>
<BuildModes Count="1" Active="Default">
<Item1 Name="Default" Default="True"/>
</BuildModes>
<PublishOptions>
<Version Value="2"/>
<IncludeFileFilter Value="*.(pas|pp|inc|lfm|lpr|lrs|lpi|lpk|sh|xml)"/>
<ExcludeFileFilter Value="*.(bak|ppu|o|so);*~;backup"/>
</PublishOptions>
<RunParams>
<local>
<FormatVersion Value="1"/>
</local>
</RunParams>
<RequiredPackages Count="4">
<Item1>
<PackageName Value="rxnew"/>
</Item1>
<Item2>
<PackageName Value="FPCUnitTestRunner"/>
</Item2>
<Item3>
<PackageName Value="LCL"/>
</Item3>
<Item4>
<PackageName Value="FCL"/>
</Item4>
</RequiredPackages>
<Units Count="19">
<Unit0>
<Filename Value="rx_ext_test_harness.lpr"/>
<IsPartOfProject Value="True"/>
<CursorPos X="35" Y="9"/>
<UsageCount Value="27"/>
</Unit0>
<Unit1>
<Filename Value="rx_ext_test_case_1.pas"/>
<IsPartOfProject Value="True"/>
<IsVisibleTab Value="True"/>
<TopLine Value="66"/>
<CursorPos X="33" Y="120"/>
<UsageCount Value="27"/>
<Loaded Value="True"/>
</Unit1>
<Unit2>
<Filename Value="../../../../../../src/fpc-2.4.2/packages/fcl-fpcunit/src/testregistry.pp"/>
<UsageCount Value="12"/>
</Unit2>
<Unit3>
<Filename Value="../../../lazarus/components/rxnew/rx/rxmemds.pas"/>
<TopLine Value="18"/>
<CursorPos X="14" Y="41"/>
<UsageCount Value="13"/>
</Unit3>
<Unit4>
<Filename Value="../../../lazarus/components/fpcunit/guitestrunner.pas"/>
<UnitName Value="GuiTestRunner"/>
<EditorIndex Value="-1"/>
<TopLine Value="207"/>
<CursorPos Y="247"/>
<UsageCount Value="13"/>
</Unit4>
<Unit5>
<Filename Value="../../../../../../src/fpc-2.4.2/packages/fcl-fpcunit/src/fpcunit.pp"/>
<TopLine Value="1226"/>
<CursorPos X="10" Y="908"/>
<UsageCount Value="12"/>
</Unit5>
<Unit6>
<Filename Value="../../../lazarus/components/rxnew/rx/ex_rx_datapacket.pas"/>
<UsageCount Value="11"/>
</Unit6>
<Unit7>
<Filename Value="../../../lazarus/components/rxnew/rx/ex_rx_xml_datapacket.pas"/>
<TopLine Value="329"/>
<CursorPos X="30" Y="342"/>
<UsageCount Value="11"/>
</Unit7>
<Unit8>
<Filename Value="../../../../../../src/fpc-2.4.2/packages/fcl-db/src/base/db.pas"/>
<TopLine Value="238"/>
<CursorPos X="17" Y="255"/>
<UsageCount Value="11"/>
</Unit8>
<Unit9>
<Filename Value="../../../../../../src/fpc-2.4.2/rtl/objpas/sysutils/datih.inc"/>
<TopLine Value="100"/>
<CursorPos X="10" Y="109"/>
<UsageCount Value="11"/>
</Unit9>
<Unit10>
<Filename Value="../../../../../../src/fpc-2.4.2/rtl/objpas/sysutils/dati.inc"/>
<TopLine Value="1101"/>
<CursorPos X="3" Y="1108"/>
<UsageCount Value="11"/>
</Unit10>
<Unit11>
<Filename Value="../../../../../../src/fpc-2.4.2/rtl/objpas/sysutils/syspchh.inc"/>
<TopLine Value="12"/>
<CursorPos X="10" Y="29"/>
<UsageCount Value="11"/>
</Unit11>
<Unit12>
<Filename Value="../../../../../../src/fpc-2.4.2/rtl/inc/genstr.inc"/>
<TopLine Value="243"/>
<CursorPos X="9" Y="248"/>
<UsageCount Value="11"/>
</Unit12>
<Unit13>
<Filename Value="../../rxmemds.pas"/>
<EditorIndex Value="-1"/>
<CursorPos X="45" Y="40"/>
<UsageCount Value="10"/>
</Unit13>
<Unit14>
<Filename Value="../../ex_rx_bin_datapacket.pas"/>
<UsageCount Value="10"/>
</Unit14>
<Unit15>
<Filename Value="../../ex_rx_datapacket.pas"/>
<UsageCount Value="10"/>
</Unit15>
<Unit16>
<Filename Value="../../ex_rx_xml_datapacket.pas"/>
<TopLine Value="323"/>
<CursorPos X="80" Y="343"/>
<UsageCount Value="10"/>
</Unit16>
<Unit17>
<Filename Value="../rx/rxmemds.pas"/>
<TopLine Value="3"/>
<CursorPos X="3" Y="41"/>
<UsageCount Value="10"/>
</Unit17>
<Unit18>
<Filename Value="../../../../install/fpcsrc/packages/fcl-db/src/base/db.pas"/>
<TopLine Value="1367"/>
<CursorPos X="3" Y="1339"/>
<UsageCount Value="10"/>
</Unit18>
</Units>
<JumpHistory Count="17" HistoryIndex="16">
<Position1>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="134" TopLine="111"/>
</Position1>
<Position2>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="135" TopLine="111"/>
</Position2>
<Position3>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="94" Column="18" TopLine="71"/>
</Position3>
<Position4>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="101" TopLine="81"/>
</Position4>
<Position5>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="123" TopLine="93"/>
</Position5>
<Position6>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="116" TopLine="93"/>
</Position6>
<Position7>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="108" Column="2" TopLine="93"/>
</Position7>
<Position8>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="150" Column="119" TopLine="122"/>
</Position8>
<Position9>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="133" Column="81" TopLine="122"/>
</Position9>
<Position10>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="120" Column="39" TopLine="91"/>
</Position10>
<Position11>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="151" Column="164" TopLine="134"/>
</Position11>
<Position12>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="137" Column="15" TopLine="115"/>
</Position12>
<Position13>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="154" Column="164" TopLine="136"/>
</Position13>
<Position14>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="137" Column="41" TopLine="130"/>
</Position14>
<Position15>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="157" Column="7" TopLine="140"/>
</Position15>
<Position16>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="137" Column="16" TopLine="127"/>
</Position16>
<Position17>
<Filename Value="rx_ext_test_case_1.pas"/>
<Caret Line="120" Column="33"/>
</Position17>
</JumpHistory>
</ProjectOptions>
<CompilerOptions>
<Version Value="11"/>
<SearchPaths>
<IncludeFiles Value="$(ProjOutDir)"/>
</SearchPaths>
</CompilerOptions>
<Debugging>
<Exceptions Count="3">
<Item1>
<Name Value="EAbort"/>
</Item1>
<Item2>
<Name Value="ECodetoolError"/>
</Item2>
<Item3>
<Name Value="EFOpenError"/>
</Item3>
</Exceptions>
</Debugging>
</CONFIG>

View File

@@ -0,0 +1,15 @@
program rx_ext_test_harness;
{$mode objfpc}{$H+}
uses
Interfaces, Forms, GuiTestRunner, rxnew, rx_ext_test_case_1;
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TGuiTestRunner, TestRunner);
Application.Run;
end.