mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-20 18:09:27 +02:00
parent
4582b56506
commit
93a528cd7a
@ -168,6 +168,7 @@ type
|
||||
procedure TestBug6893;
|
||||
procedure TestRequired;
|
||||
procedure TestModified;
|
||||
procedure TestUpdateCursorPos; // bug 31532
|
||||
// fields
|
||||
procedure TestFieldOldValueObsolete;
|
||||
procedure TestFieldOldValue;
|
||||
@ -684,6 +685,37 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTestCursorDBBasics.TestUpdateCursorPos;
|
||||
var
|
||||
datasource1: TDataSource;
|
||||
datalink1: TDataLink;
|
||||
dataset1: TDataSet;
|
||||
i,r: integer;
|
||||
begin
|
||||
// TBufDataset should notify TDataset (TDataset.CurrentRecord) when changes internaly current record
|
||||
// TBufDataset.GetRecNo was synchronizing its internal position with TDataset.ActiveRecord, but TDataset.CurrentRecord remains unchaged
|
||||
// Bug #31532
|
||||
dataset1 := DBConnector.GetNDataset(16);
|
||||
datasource1 := TDataSource.Create(nil);
|
||||
datasource1.DataSet := dataset1;
|
||||
datalink1 := TDataLink.Create;
|
||||
datalink1:= TDataLink.create;
|
||||
datalink1.DataSource:= datasource1;
|
||||
datalink1.BufferCount:= 12;
|
||||
|
||||
dataset1.Open;
|
||||
dataset1.MoveBy(4);
|
||||
CheckEquals(5, dataset1.RecNo);
|
||||
for i:=13 to 15 do begin
|
||||
datalink1.BufferCount := datalink1.BufferCount+1;
|
||||
r := dataset1.RecNo; // syncronizes source dataset to ActiveRecord
|
||||
datalink1.ActiveRecord := datalink1.BufferCount-1;
|
||||
CheckEquals(i, dataset1.FieldByName('ID').AsInteger);
|
||||
end;
|
||||
datasource1.free;
|
||||
datalink1.free;
|
||||
end;
|
||||
|
||||
procedure TTestDBBasics.TestDetectionNonMatchingDataset;
|
||||
var
|
||||
F: TField;
|
||||
|
Loading…
Reference in New Issue
Block a user