Browse Source

* Splitted up TCustomBufDataset tests from more general tests

git-svn-id: trunk@15413 -
joost 15 years ago
parent
commit
87555e084a
1 changed files with 92 additions and 81 deletions
  1. 92 81
      packages/fcl-db/tests/testdbbasics.pas

+ 92 - 81
packages/fcl-db/tests/testdbbasics.pas

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