* Splitted up TCustomBufDataset tests from more general tests

git-svn-id: trunk@15413 -
This commit is contained in:
joost 2010-06-12 16:37:35 +00:00
parent fb3ede2ef7
commit 87555e084a

View File

@ -22,18 +22,12 @@ type
procedure FTestDelete1(TestCancelUpdate : boolean); procedure FTestDelete1(TestCancelUpdate : boolean);
procedure FTestDelete2(TestCancelUpdate : boolean); procedure FTestDelete2(TestCancelUpdate : boolean);
procedure FTestXMLDatasetDefinition(ADataset : TDataset);
procedure TestAddIndexFieldType(AFieldType : TFieldType; ActiveDS : boolean);
protected protected
procedure SetUp; override; procedure SetUp; override;
procedure TearDown; override; procedure TearDown; override;
published published
procedure TestClosedIndexFieldNames; // bug 16695
procedure TestFileNameProperty;
procedure TestClientDatasetAsMemDataset;
procedure TestCancelUpdDelete1; procedure TestCancelUpdDelete1;
procedure TestCancelUpdDelete2; procedure TestCancelUpdDelete2;
procedure TestSafeAsXML;
procedure TestAppendInsertRecord; procedure TestAppendInsertRecord;
procedure TestBookmarks; procedure TestBookmarks;
procedure TestBookmarkValid; procedure TestBookmarkValid;
@ -51,31 +45,6 @@ type
procedure TestSetFieldValues; procedure TestSetFieldValues;
procedure TestGetFieldValues; procedure TestGetFieldValues;
procedure TestAddIndex;
procedure TestAddDescIndex;
procedure TestAddCaseInsIndex;
procedure TestInactSwitchIndex;
procedure TestAddIndexInteger;
procedure TestAddIndexSmallInt;
procedure TestAddIndexBoolean;
procedure TestAddIndexFloat;
procedure TestAddIndexLargeInt;
procedure TestAddIndexDateTime;
procedure TestAddIndexCurrency;
procedure TestAddIndexBCD;
procedure TestAddIndexActiveDS;
procedure TestAddIndexEditDS;
procedure TestIndexFieldNames;
procedure TestIndexFieldNamesAct;
procedure TestIndexCurRecord;
procedure TestAddDblIndex;
procedure TestIndexEditRecord;
procedure TestNullAtOpen; procedure TestNullAtOpen;
procedure TestSupportIntegerFields; procedure TestSupportIntegerFields;
@ -89,15 +58,10 @@ type
procedure TestSupportBCDFields; procedure TestSupportBCDFields;
procedure TestSupportFixedStringFields; procedure TestSupportFixedStringFields;
procedure TestIsEmpty;
procedure TestAppendOnEmptyDataset; procedure TestAppendOnEmptyDataset;
procedure TestInsertOnEmptyDataset; procedure TestInsertOnEmptyDataset;
procedure TestBufDatasetCancelUpd; //bug 6938
procedure TestEofAfterFirst; //bug 7211 procedure TestEofAfterFirst; //bug 7211
procedure TestBufDatasetCancelUpd1;
procedure TestMultipleDeleteUpdateBuffer;
procedure TestDoubleDelete;
procedure TestDoubleClose; procedure TestDoubleClose;
procedure TestCalculatedField; procedure TestCalculatedField;
procedure TestAssignFieldftString; procedure TestAssignFieldftString;
@ -120,6 +84,53 @@ type
procedure TestCanModifySpecialFields; procedure TestCanModifySpecialFields;
end; end;
{ TTestBufDatasetDBBasics }
TTestBufDatasetDBBasics = class(TTestCase)
private
procedure FTestXMLDatasetDefinition(ADataset : TDataset);
procedure TestAddIndexFieldType(AFieldType : TFieldType; ActiveDS : boolean);
protected
procedure SetUp; override;
procedure TearDown; override;
published
procedure TestClosedIndexFieldNames; // bug 16695
procedure TestFileNameProperty;
procedure TestClientDatasetAsMemDataset;
procedure TestSafeAsXML;
procedure TestIsEmpty;
procedure TestBufDatasetCancelUpd; //bug 6938
procedure TestBufDatasetCancelUpd1;
procedure TestMultipleDeleteUpdateBuffer;
procedure TestDoubleDelete;
// index tests
procedure TestAddIndexInteger;
procedure TestAddIndexSmallInt;
procedure TestAddIndexBoolean;
procedure TestAddIndexFloat;
procedure TestAddIndexLargeInt;
procedure TestAddIndexDateTime;
procedure TestAddIndexCurrency;
procedure TestAddIndexBCD;
procedure TestAddIndex;
procedure TestAddDescIndex;
procedure TestAddCaseInsIndex;
procedure TestInactSwitchIndex;
procedure TestAddIndexActiveDS;
procedure TestAddIndexEditDS;
procedure TestIndexFieldNames;
procedure TestIndexFieldNamesAct;
procedure TestIndexCurRecord;
procedure TestAddDblIndex;
procedure TestIndexEditRecord;
end;
TTestUniDirectionalDBBasics = class(TTestDBBasics) TTestUniDirectionalDBBasics = class(TTestDBBasics)
end; end;
@ -137,10 +148,8 @@ uses bufdataset, variants, strutils, sqldb;
type THackDataLink=class(TdataLink); type THackDataLink=class(TdataLink);
procedure TTestDBBasics.TestIsEmpty; procedure TTestBufDatasetDBBasics.TestIsEmpty;
begin begin
if not (DBConnector.GetNDataset(5) is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
with tCustombufdataset(DBConnector.GetNDataset(True,1)) do with tCustombufdataset(DBConnector.GetNDataset(True,1)) do
begin begin
open; open;
@ -537,7 +546,7 @@ begin
DBConnector.StopTest; DBConnector.StopTest;
end; end;
procedure TTestDBBasics.TestClosedIndexFieldNames; procedure TTestBufDatasetDBBasics.TestClosedIndexFieldNames;
var s : string; var s : string;
bufds: TCustomBufDataset; bufds: TCustomBufDataset;
begin begin
@ -583,13 +592,11 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestSafeAsXML; procedure TTestBufDatasetDBBasics.TestSafeAsXML;
var ds : TDataset; var ds : TDataset;
LoadDs: TCustomBufDataset; LoadDs: TCustomBufDataset;
begin begin
ds := DBConnector.GetNDataset(true,5); ds := DBConnector.GetNDataset(true,5);
if not (ds is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
ds.open; ds.open;
TCustomBufDataset(ds).SaveToFile('test.xml'); TCustomBufDataset(ds).SaveToFile('test.xml');
@ -600,16 +607,13 @@ begin
FTestXMLDatasetDefinition(LoadDS); FTestXMLDatasetDefinition(LoadDS);
end; end;
procedure TTestDBBasics.TestFileNameProperty; procedure TTestBufDatasetDBBasics.TestFileNameProperty;
var ds1,ds2: TDataset; var ds1,ds2: TDataset;
LoadDs: TCustomBufDataset; LoadDs: TCustomBufDataset;
begin begin
ds2 := nil; ds2 := nil;
ds1 := DBConnector.GetNDataset(true,5); ds1 := DBConnector.GetNDataset(true,5);
try try
if not (ds1 is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
ds1.open; ds1.open;
TCustomBufDataset(ds1).FileName:='test.xml'; TCustomBufDataset(ds1).FileName:='test.xml';
ds1.close; ds1.close;
@ -625,7 +629,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestClientDatasetAsMemDataset; procedure TTestBufDatasetDBBasics.TestClientDatasetAsMemDataset;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
i : integer; i : integer;
begin begin
@ -1048,7 +1052,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.FTestXMLDatasetDefinition(ADataset: TDataset); procedure TTestBufDatasetDBBasics.FTestXMLDatasetDefinition(ADataset: TDataset);
var i : integer; var i : integer;
begin begin
AssertEquals(2,ADataset.FieldDefs.Count); AssertEquals(2,ADataset.FieldDefs.Count);
@ -1152,7 +1156,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddIndexFieldType(AFieldType: TFieldType; ActiveDS : boolean); procedure TTestBufDatasetDBBasics.TestAddIndexFieldType(AFieldType: TFieldType; ActiveDS : boolean);
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
FList : TStringList; FList : TStringList;
LastValue : Variant; LastValue : Variant;
@ -1211,47 +1215,47 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddIndexSmallInt; procedure TTestBufDatasetDBBasics.TestAddIndexSmallInt;
begin begin
TestAddIndexFieldType(ftSmallint,False); TestAddIndexFieldType(ftSmallint,False);
end; end;
procedure TTestDBBasics.TestAddIndexBoolean; procedure TTestBufDatasetDBBasics.TestAddIndexBoolean;
begin begin
TestAddIndexFieldType(ftBoolean,False); TestAddIndexFieldType(ftBoolean,False);
end; end;
procedure TTestDBBasics.TestAddIndexFloat; procedure TTestBufDatasetDBBasics.TestAddIndexFloat;
begin begin
TestAddIndexFieldType(ftFloat,False); TestAddIndexFieldType(ftFloat,False);
end; end;
procedure TTestDBBasics.TestAddIndexInteger; procedure TTestBufDatasetDBBasics.TestAddIndexInteger;
begin begin
TestAddIndexFieldType(ftInteger,False); TestAddIndexFieldType(ftInteger,False);
end; end;
procedure TTestDBBasics.TestAddIndexLargeInt; procedure TTestBufDatasetDBBasics.TestAddIndexLargeInt;
begin begin
TestAddIndexFieldType(ftLargeint,False); TestAddIndexFieldType(ftLargeint,False);
end; end;
procedure TTestDBBasics.TestAddIndexDateTime; procedure TTestBufDatasetDBBasics.TestAddIndexDateTime;
begin begin
TestAddIndexFieldType(ftDateTime,False); TestAddIndexFieldType(ftDateTime,False);
end; end;
procedure TTestDBBasics.TestAddIndexCurrency; procedure TTestBufDatasetDBBasics.TestAddIndexCurrency;
begin begin
TestAddIndexFieldType(ftCurrency,False); TestAddIndexFieldType(ftCurrency,False);
end; end;
procedure TTestDBBasics.TestAddIndexBCD; procedure TTestBufDatasetDBBasics.TestAddIndexBCD;
begin begin
TestAddIndexFieldType(ftBCD,False); TestAddIndexFieldType(ftBCD,False);
end; end;
procedure TTestDBBasics.TestAddIndex; procedure TTestBufDatasetDBBasics.TestAddIndex;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
FList : TStringList; FList : TStringList;
@ -1295,7 +1299,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddDescIndex; procedure TTestBufDatasetDBBasics.TestAddDescIndex;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
FList : TStringList; FList : TStringList;
@ -1339,7 +1343,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddCaseInsIndex; procedure TTestBufDatasetDBBasics.TestAddCaseInsIndex;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
FList : TStringList; FList : TStringList;
@ -1382,7 +1386,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestInactSwitchIndex; procedure TTestBufDatasetDBBasics.TestInactSwitchIndex;
// Test if the default-index is properly build when the active index is not // Test if the default-index is properly build when the active index is not
// the default-index while opening then dataset // the default-index while opening then dataset
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
@ -1411,14 +1415,14 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddIndexActiveDS; procedure TTestBufDatasetDBBasics.TestAddIndexActiveDS;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
I : integer; I : integer;
begin begin
TestAddIndexFieldType(ftString,true); TestAddIndexFieldType(ftString,true);
end; end;
procedure TTestDBBasics.TestAddIndexEditDS; procedure TTestBufDatasetDBBasics.TestAddIndexEditDS;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
I : integer; I : integer;
LastValue : String; LastValue : String;
@ -1451,7 +1455,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestIndexFieldNamesAct; procedure TTestBufDatasetDBBasics.TestIndexFieldNamesAct;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
FList : TStringList; FList : TStringList;
@ -1522,7 +1526,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestIndexCurRecord; procedure TTestBufDatasetDBBasics.TestIndexCurRecord;
// Test if the currentrecord stays the same after an index change // Test if the currentrecord stays the same after an index change
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
@ -1570,7 +1574,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestAddDblIndex; procedure TTestBufDatasetDBBasics.TestAddDblIndex;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
LastInteger : Integer; LastInteger : Integer;
LastString : string; LastString : string;
@ -1615,7 +1619,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestIndexEditRecord; procedure TTestBufDatasetDBBasics.TestIndexEditRecord;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
i : integer; i : integer;
@ -1649,7 +1653,7 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestIndexFieldNames; procedure TTestBufDatasetDBBasics.TestIndexFieldNames;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
AFieldType : TFieldType; AFieldType : TFieldType;
PrevValue : String; PrevValue : String;
@ -1981,11 +1985,9 @@ begin
AParam.Free; AParam.Free;
end; end;
procedure TTestDBBasics.TestBufDatasetCancelUpd; procedure TTestBufDatasetDBBasics.TestBufDatasetCancelUpd;
var i : byte; var i : byte;
begin begin
if not (DBConnector.GetNDataset(5) is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
with DBConnector.GetNDataset(5) as TCustomBufDataset do with DBConnector.GetNDataset(5) as TCustomBufDataset do
begin begin
open; open;
@ -2096,11 +2098,9 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestBufDatasetCancelUpd1; procedure TTestBufDatasetDBBasics.TestBufDatasetCancelUpd1;
var i : byte; var i : byte;
begin begin
if not (DBConnector.GetNDataset(5) is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
with DBConnector.GetNDataset(5) as TCustomBufDataset do with DBConnector.GetNDataset(5) as TCustomBufDataset do
begin begin
open; open;
@ -2125,12 +2125,10 @@ begin
end; end;
end; end;
procedure TTestDBBasics.TestMultipleDeleteUpdateBuffer; procedure TTestBufDatasetDBBasics.TestMultipleDeleteUpdateBuffer;
var ds : TDataset; var ds : TDataset;
begin begin
ds := DBConnector.GetNDataset(true,5); ds := DBConnector.GetNDataset(true,5);
if not (ds is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
ds.open; ds.open;
with TCustomBufDataset(ds) do with TCustomBufDataset(ds) do
@ -2151,12 +2149,10 @@ begin
ds.close; ds.close;
end; end;
procedure TTestDBBasics.TestDoubleDelete; procedure TTestBufDatasetDBBasics.TestDoubleDelete;
var ds : TCustomBufDataset; var ds : TCustomBufDataset;
begin begin
ds := TCustomBufDataset(DBConnector.GetNDataset(true,5)); ds := TCustomBufDataset(DBConnector.GetNDataset(true,5));
if not (ds is TCustomBufDataset) then
Ignore('This test only applies to TCustomBufDataset and descendents.');
with ds do with ds do
begin begin
@ -2215,9 +2211,24 @@ begin
inherited OneTimeTearDown; inherited OneTimeTearDown;
end; end;
{ TTestBufDatasetDBBasics }
procedure TTestBufDatasetDBBasics.SetUp;
begin
DBConnector.StartTest;
end;
procedure TTestBufDatasetDBBasics.TearDown;
begin
DBConnector.StopTest;
end;
initialization initialization
RegisterTestDecorator(TDBBasicsTestSetup, TTestDBBasics); RegisterTestDecorator(TDBBasicsTestSetup, TTestDBBasics);
if uppercase(dbconnectorname)='SQL' then if uppercase(dbconnectorname)='SQL' then
begin
RegisterTestDecorator(TDBBasicsTestSetup, TTestBufDatasetDBBasics);
RegisterTestDecorator(TDBBasicsUniDirectionalTestSetup, TTestUniDirectionalDBBasics); RegisterTestDecorator(TDBBasicsUniDirectionalTestSetup, TTestUniDirectionalDBBasics);
end;
end. end.