mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-20 22:51:20 +02:00
fcl-db: tests:
- remove unused variables - fix tests for Oracle - first test Values and then Field type git-svn-id: trunk@28055 -
This commit is contained in:
parent
1e9f57467d
commit
9d5c2717c8
@ -20,8 +20,9 @@ type
|
|||||||
|
|
||||||
TTestDBBasics = class(TDBBasicsTestCase)
|
TTestDBBasics = class(TDBBasicsTestCase)
|
||||||
private
|
private
|
||||||
procedure TestfieldDefinition(AFieldType : TFieldType; ADataSize : integer; out ADS : TDataset; out AFld: TField);
|
procedure TestFieldDefinition(AFieldType : TFieldType; ADataSize : integer; out ADS : TDataset; out AFld: TField); overload;
|
||||||
procedure TestcalculatedField_OnCalcfields(DataSet: TDataSet);
|
procedure TestFieldDefinition(AFld: TField; AFieldType : TFieldType; ADataSize : integer); overload;
|
||||||
|
procedure TestCalculatedField_OnCalcfields(DataSet: TDataSet);
|
||||||
|
|
||||||
published
|
published
|
||||||
// fields
|
// fields
|
||||||
@ -236,7 +237,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSelectQueryBasics;
|
procedure TTestDBBasics.TestSelectQueryBasics;
|
||||||
var b : TFieldType;
|
|
||||||
begin
|
begin
|
||||||
with DBConnector.GetNDataset(1) do
|
with DBConnector.GetNDataset(1) do
|
||||||
begin
|
begin
|
||||||
@ -381,7 +381,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestDataEventsResync;
|
procedure TTestDBBasics.TestDataEventsResync;
|
||||||
var i,count : integer;
|
var
|
||||||
aDatasource : TDataSource;
|
aDatasource : TDataSource;
|
||||||
aDatalink : TDataLink;
|
aDatalink : TDataLink;
|
||||||
ds : tdataset;
|
ds : tdataset;
|
||||||
@ -420,7 +420,7 @@ end;
|
|||||||
|
|
||||||
procedure TTestDBBasics.TestdeFieldListChange;
|
procedure TTestDBBasics.TestdeFieldListChange;
|
||||||
|
|
||||||
var i,count : integer;
|
var
|
||||||
aDatasource : TDataSource;
|
aDatasource : TDataSource;
|
||||||
aDatalink : TDataLink;
|
aDatalink : TDataLink;
|
||||||
ds : TDataset;
|
ds : TDataset;
|
||||||
@ -1246,8 +1246,6 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestCursorDBBasics.TestOnFilterProc(DataSet: TDataSet; var Accept: Boolean);
|
procedure TTestCursorDBBasics.TestOnFilterProc(DataSet: TDataSet; var Accept: Boolean);
|
||||||
var
|
|
||||||
a : TDataSetState;
|
|
||||||
begin
|
begin
|
||||||
Accept := odd(Dataset.FieldByName('ID').AsInteger);
|
Accept := odd(Dataset.FieldByName('ID').AsInteger);
|
||||||
end;
|
end;
|
||||||
@ -1343,8 +1341,6 @@ end;
|
|||||||
|
|
||||||
procedure TTestCursorDBBasics.TestStringFilter;
|
procedure TTestCursorDBBasics.TestStringFilter;
|
||||||
// Tests string expression filters
|
// Tests string expression filters
|
||||||
var
|
|
||||||
Counter : byte;
|
|
||||||
begin
|
begin
|
||||||
with DBConnector.GetNDataset(15) do
|
with DBConnector.GetNDataset(15) do
|
||||||
begin
|
begin
|
||||||
@ -1750,9 +1746,7 @@ end;
|
|||||||
|
|
||||||
procedure TTestBufDatasetDBBasics.TestAddIndexFieldType(AFieldType: TFieldType; ActiveDS : boolean);
|
procedure TTestBufDatasetDBBasics.TestAddIndexFieldType(AFieldType: TFieldType; ActiveDS : boolean);
|
||||||
var ds : TCustomBufDataset;
|
var ds : TCustomBufDataset;
|
||||||
FList : TStringList;
|
|
||||||
LastValue : Variant;
|
LastValue : Variant;
|
||||||
StrValue : String;
|
|
||||||
begin
|
begin
|
||||||
ds := DBConnector.GetFieldDataset as TCustomBufDataset;
|
ds := DBConnector.GetFieldDataset as TCustomBufDataset;
|
||||||
with ds do
|
with ds do
|
||||||
@ -2025,15 +2019,12 @@ begin
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestBufDatasetDBBasics.TestAddIndexActiveDS;
|
procedure TTestBufDatasetDBBasics.TestAddIndexActiveDS;
|
||||||
var ds : TCustomBufDataset;
|
|
||||||
I : integer;
|
|
||||||
begin
|
begin
|
||||||
TestAddIndexFieldType(ftString,true);
|
TestAddIndexFieldType(ftString,true);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestBufDatasetDBBasics.TestAddIndexEditDS;
|
procedure TTestBufDatasetDBBasics.TestAddIndexEditDS;
|
||||||
var ds : TCustomBufDataset;
|
var ds : TCustomBufDataset;
|
||||||
I : integer;
|
|
||||||
LastValue : String;
|
LastValue : String;
|
||||||
begin
|
begin
|
||||||
ds := DBConnector.GetNDataset(True,5) as TCustomBufDataset;
|
ds := DBConnector.GetNDataset(True,5) as TCustomBufDataset;
|
||||||
@ -2239,7 +2230,6 @@ procedure TTestBufDatasetDBBasics.TestIndexEditRecord;
|
|||||||
// with a value at the end of the alphabet
|
// with a value at the end of the alphabet
|
||||||
var ds : TCustomBufDataset;
|
var ds : TCustomBufDataset;
|
||||||
AFieldType : TFieldType;
|
AFieldType : TFieldType;
|
||||||
i : integer;
|
|
||||||
OldID : Integer;
|
OldID : Integer;
|
||||||
OldStringValue : string;
|
OldStringValue : string;
|
||||||
begin
|
begin
|
||||||
@ -2410,28 +2400,30 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestfieldDefinition(AFieldType : TFieldType; ADataSize : integer; out ADS : TDataset; out AFld: TField);
|
procedure TTestDBBasics.TestFieldDefinition(AFieldType: TFieldType; ADataSize: integer; out ADS: TDataset; out AFld: TField);
|
||||||
|
|
||||||
var i : byte;
|
|
||||||
|
|
||||||
begin
|
begin
|
||||||
ADS := DBConnector.GetFieldDataset;
|
ADS := DBConnector.GetFieldDataset;
|
||||||
ADS.Open;
|
ADS.Open;
|
||||||
|
|
||||||
AFld := ADS.FindField('F'+FieldTypeNames[AfieldType]);
|
AFld := ADS.FindField('F'+FieldTypeNames[AFieldType]);
|
||||||
|
|
||||||
{$ifdef fpc}
|
{$ifdef fpc}
|
||||||
if not assigned (AFld) then
|
if not assigned (AFld) then
|
||||||
Ignore('Fields of the type ' + FieldTypeNames[AfieldType] + ' are not supported by this type of dataset');
|
Ignore('Fields of the type ' + FieldTypeNames[AFieldType] + ' are not supported by this type of dataset');
|
||||||
{$endif fpc}
|
{$endif fpc}
|
||||||
CheckEquals(ord(AFieldType), ord(AFld.DataType), 'DataType');
|
if ADataSize <> -1 then
|
||||||
|
TestFieldDefinition(AFld, AFieldType, ADataSize);
|
||||||
|
end;
|
||||||
|
|
||||||
|
procedure TTestDBBasics.TestFieldDefinition(AFld: TField; AFieldType: TFieldType; ADataSize: integer);
|
||||||
|
begin
|
||||||
|
CheckEquals(FieldTypeNames[AFieldType], FieldTypeNames[AFld.DataType], 'DataType');
|
||||||
CheckEquals(ADatasize, AFld.DataSize, 'DataSize');
|
CheckEquals(ADatasize, AFld.DataSize, 'DataSize');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportIntegerFields;
|
procedure TTestDBBasics.TestSupportIntegerFields;
|
||||||
|
|
||||||
var i, FS : integer;
|
var i : integer;
|
||||||
FT : TFieldType;
|
|
||||||
DS : TDataset;
|
DS : TDataset;
|
||||||
Fld : TField;
|
Fld : TField;
|
||||||
DbfTableLevel: integer;
|
DbfTableLevel: integer;
|
||||||
@ -2444,27 +2436,16 @@ begin
|
|||||||
Ignore('TDBF: only Visual Foxpro and DBase7 support full integer range.');
|
Ignore('TDBF: only Visual Foxpro and DBase7 support full integer range.');
|
||||||
end;
|
end;
|
||||||
|
|
||||||
if (uppercase(dbconnectorname)='SQL') and
|
TestFieldDefinition(ftInteger,-1,DS,Fld);
|
||||||
(uppercase(dbconnectorparams)='ORACLE') then
|
|
||||||
begin
|
|
||||||
// Oracle: NUMERIC fields that map to ftFMTBCD are used; these do not map to ftInteger
|
|
||||||
// We still want to run the value tests below, so set up things manually:
|
|
||||||
FT:=ftFmtBCD;
|
|
||||||
FS:=sizeof(TBCD);
|
|
||||||
end
|
|
||||||
else
|
|
||||||
begin
|
|
||||||
FT:=ftInteger;
|
|
||||||
FS:=sizeof(integer);
|
|
||||||
end;
|
|
||||||
|
|
||||||
TestfieldDefinition(FT,FS,DS,Fld);
|
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testIntValues[i],Fld.AsInteger);
|
CheckEquals(testIntValues[i],Fld.AsInteger);
|
||||||
DS.Next;
|
DS.Next;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
TestFieldDefinition(Fld,ftInteger,4);
|
||||||
|
|
||||||
DS.Close;
|
DS.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2478,14 +2459,17 @@ begin
|
|||||||
if (uppercase(dbconnectorname)='DBF') then
|
if (uppercase(dbconnectorname)='DBF') then
|
||||||
Ignore('TDBF: Smallint support only from -999 to 9999');
|
Ignore('TDBF: Smallint support only from -999 to 9999');
|
||||||
|
|
||||||
TestfieldDefinition(ftSmallint,2,ds,Fld);
|
TestFieldDefinition(ftSmallint,-1,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testSmallIntValues[i],Fld.AsInteger);
|
CheckEquals(testSmallIntValues[i],Fld.AsInteger);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
TestFieldDefinition(Fld,ftSmallint,2);
|
||||||
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportWordFields;
|
procedure TTestDBBasics.TestSupportWordFields;
|
||||||
@ -2494,14 +2478,15 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftWord,2,ds,Fld);
|
TestFieldDefinition(ftWord,2,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testWordValues[i],Fld.AsInteger);
|
CheckEquals(testWordValues[i],Fld.AsInteger);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -2512,7 +2497,7 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftString,11,ds,Fld);
|
TestFieldDefinition(ftString,11,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
@ -2522,7 +2507,8 @@ begin
|
|||||||
CheckEquals(TrimRight(testStringValues[i]),Fld.AsString);
|
CheckEquals(TrimRight(testStringValues[i]),Fld.AsString);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportBooleanFields;
|
procedure TTestDBBasics.TestSupportBooleanFields;
|
||||||
@ -2532,14 +2518,15 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftBoolean,2,ds,Fld);
|
TestFieldDefinition(ftBoolean,2,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testBooleanValues[i],Fld.AsBoolean);
|
CheckEquals(testBooleanValues[i],Fld.AsBoolean);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportFloatFields;
|
procedure TTestDBBasics.TestSupportFloatFields;
|
||||||
@ -2549,14 +2536,15 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftFloat,8,ds,Fld);
|
TestFieldDefinition(ftFloat,-1,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testFloatValues[i],Fld.AsFloat);
|
CheckEquals(testFloatValues[i],Fld.AsFloat);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportLargeIntFields;
|
procedure TTestDBBasics.TestSupportLargeIntFields;
|
||||||
@ -2566,14 +2554,17 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftLargeint,8,ds,Fld);
|
TestFieldDefinition(ftLargeint,-1,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testLargeIntValues[i],Fld.AsLargeInt);
|
CheckEquals(testLargeIntValues[i],Fld.AsLargeInt);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
TestFieldDefinition(Fld,ftLargeint,8);
|
||||||
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportDateFields;
|
procedure TTestDBBasics.TestSupportDateFields;
|
||||||
@ -2583,14 +2574,15 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftDate,8,ds,Fld);
|
TestFieldDefinition(ftDate,8,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testDateValues[i], FormatDateTime('yyyy/mm/dd', Fld.AsDateTime, DBConnector.FormatSettings));
|
CheckEquals(testDateValues[i], FormatDateTime('yyyy/mm/dd', Fld.AsDateTime, DBConnector.FormatSettings));
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportTimeFields;
|
procedure TTestDBBasics.TestSupportTimeFields;
|
||||||
@ -2598,14 +2590,15 @@ var i : byte;
|
|||||||
ds : TDataset;
|
ds : TDataset;
|
||||||
Fld : TField;
|
Fld : TField;
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftTime,8,ds,Fld);
|
TestFieldDefinition(ftTime,8,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testTimeValues[i],DateTimeToTimeString(fld.AsDateTime));
|
CheckEquals(testTimeValues[i],DateTimeToTimeString(fld.AsDateTime));
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportDateTimeFields;
|
procedure TTestDBBasics.TestSupportDateTimeFields;
|
||||||
@ -2613,13 +2606,14 @@ var i : integer;
|
|||||||
DS : TDataSet;
|
DS : TDataSet;
|
||||||
Fld : TField;
|
Fld : TField;
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftDateTime,8,DS,Fld);
|
TestFieldDefinition(ftDateTime,8,DS,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testValues[ftDateTime,i], DateTimeToStr(Fld.AsDateTime, DBConnector.FormatSettings));
|
CheckEquals(testValues[ftDateTime,i], DateTimeToStr(Fld.AsDateTime, DBConnector.FormatSettings));
|
||||||
DS.Next;
|
DS.Next;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
DS.Close;
|
DS.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@ -2633,7 +2627,7 @@ begin
|
|||||||
if (uppercase(dbconnectorname)='DBF') then
|
if (uppercase(dbconnectorname)='DBF') then
|
||||||
Ignore('This test does not apply to TDBF as they store currency in BCD fields.');
|
Ignore('This test does not apply to TDBF as they store currency in BCD fields.');
|
||||||
|
|
||||||
TestfieldDefinition(ftCurrency,8,ds,Fld);
|
TestFieldDefinition(ftCurrency,8,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
@ -2641,7 +2635,8 @@ begin
|
|||||||
CheckEquals(testCurrencyValues[i],Fld.AsFloat);
|
CheckEquals(testCurrencyValues[i],Fld.AsFloat);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportBCDFields;
|
procedure TTestDBBasics.TestSupportBCDFields;
|
||||||
@ -2651,7 +2646,7 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftBCD,8,ds,Fld);
|
TestFieldDefinition(ftBCD,-1,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
@ -2660,7 +2655,10 @@ begin
|
|||||||
CheckEquals(testCurrencyValues[i], Fld.AsFloat, 'AsFloat');
|
CheckEquals(testCurrencyValues[i], Fld.AsFloat, 'AsFloat');
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
TestFieldDefinition(Fld, ftBCD, 8);
|
||||||
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportFmtBCDFields;
|
procedure TTestDBBasics.TestSupportFmtBCDFields;
|
||||||
@ -2669,7 +2667,7 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftFMTBcd,sizeof(TBCD),ds,Fld);
|
TestFieldDefinition(ftFMTBcd,sizeof(TBCD),ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
@ -2677,7 +2675,8 @@ begin
|
|||||||
CheckEquals(StrToFloat(testFmtBCDValues[i],DBConnector.FormatSettings), Fld.AsFloat, 1e-12, 'AsFloat');
|
CheckEquals(StrToFloat(testFmtBCDValues[i],DBConnector.FormatSettings), Fld.AsFloat, 1e-12, 'AsFloat');
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
|
||||||
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportFixedStringFields;
|
procedure TTestDBBasics.TestSupportFixedStringFields;
|
||||||
@ -2686,7 +2685,8 @@ var i : byte;
|
|||||||
Fld : TField;
|
Fld : TField;
|
||||||
|
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftFixedChar,11,ds,Fld);
|
TestFieldDefinition(ftFixedChar,11,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
if Fld.IsNull then // If the field is null, .AsString always returns an empty, non-padded string
|
if Fld.IsNull then // If the field is null, .AsString always returns an empty, non-padded string
|
||||||
@ -2699,7 +2699,7 @@ begin
|
|||||||
{$endif fpc}
|
{$endif fpc}
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportBlobFields;
|
procedure TTestDBBasics.TestSupportBlobFields;
|
||||||
@ -2708,14 +2708,14 @@ var i : byte;
|
|||||||
ds : TDataset;
|
ds : TDataset;
|
||||||
Fld : TField;
|
Fld : TField;
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftBlob,0,ds,Fld);
|
TestFieldDefinition(ftBlob,0,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testValues[ftBlob,i],Fld.AsString);
|
CheckEquals(testValues[ftBlob,i],Fld.AsString);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestSupportMemoFields;
|
procedure TTestDBBasics.TestSupportMemoFields;
|
||||||
@ -2723,14 +2723,14 @@ var i : byte;
|
|||||||
ds : TDataset;
|
ds : TDataset;
|
||||||
Fld : TField;
|
Fld : TField;
|
||||||
begin
|
begin
|
||||||
TestfieldDefinition(ftMemo,0,ds,Fld);
|
TestFieldDefinition(ftMemo,0,ds,Fld);
|
||||||
|
|
||||||
for i := 0 to testValuesCount-1 do
|
for i := 0 to testValuesCount-1 do
|
||||||
begin
|
begin
|
||||||
CheckEquals(testValues[ftMemo,i],Fld.AsString);
|
CheckEquals(testValues[ftMemo,i],Fld.AsString);
|
||||||
ds.Next;
|
ds.Next;
|
||||||
end;
|
end;
|
||||||
ds.close;
|
ds.Close;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestBlobBlobType;
|
procedure TTestDBBasics.TestBlobBlobType;
|
||||||
@ -2765,7 +2765,7 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestcalculatedField_OnCalcfields(DataSet: TDataSet);
|
procedure TTestDBBasics.TestCalculatedField_OnCalcfields(DataSet: TDataSet);
|
||||||
begin
|
begin
|
||||||
case dataset.fieldbyname('ID').asinteger of
|
case dataset.fieldbyname('ID').asinteger of
|
||||||
1 : dataset.fieldbyname('CALCFLD').AsInteger := 5;
|
1 : dataset.fieldbyname('CALCFLD').AsInteger := 5;
|
||||||
|
Loading…
Reference in New Issue
Block a user