mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-28 22:43:39 +02:00
* Fixed TDataLink.Activerecord, mantis 6893 + test
git-svn-id: trunk@6253 -
This commit is contained in:
parent
923c70932e
commit
f95f65de84
@ -7,6 +7,7 @@ Constructor TDataLink.Create;
|
||||
begin
|
||||
Inherited Create;
|
||||
FBufferCount:=1;
|
||||
FFirstRecord := 0;
|
||||
FDataSource := nil;
|
||||
FDatasourceFixed:=False;
|
||||
end;
|
||||
@ -26,6 +27,7 @@ end;
|
||||
Procedure TDataLink.ActiveChanged;
|
||||
|
||||
begin
|
||||
FFirstRecord := 0;
|
||||
end;
|
||||
|
||||
Procedure TDataLink.CheckActiveAndEditing;
|
||||
|
@ -55,6 +55,7 @@ type
|
||||
procedure TestEOFBOFClosedDataset;
|
||||
procedure TestDataEventsResync;
|
||||
procedure TestBug7007;
|
||||
procedure TestBug6893;
|
||||
procedure TestdeFieldListChange;
|
||||
procedure TestLastAppendCancel; // bug 5058
|
||||
procedure TestRecNo; // bug 5061
|
||||
@ -73,6 +74,8 @@ implementation
|
||||
|
||||
uses toolsunit, bufdataset;
|
||||
|
||||
type THackDataLink=class(TdataLink);
|
||||
|
||||
procedure TTestDBBasics.TestIsEmpty;
|
||||
begin
|
||||
if not (DBConnector.GetNDataset(5) is TBufDataset) then
|
||||
@ -818,6 +821,45 @@ begin
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTestDBBasics.TestBug6893;
|
||||
var
|
||||
datalink1: tdatalink;
|
||||
datasource1: tdatasource;
|
||||
query1: TDataSet;
|
||||
|
||||
begin
|
||||
query1:= DBConnector.GetNDataset(25);
|
||||
datalink1:= TDataLink.create;
|
||||
datasource1:= tdatasource.create(nil);
|
||||
try
|
||||
datalink1.datasource:= datasource1;
|
||||
datasource1.dataset:= query1;
|
||||
|
||||
datalink1.buffercount:= 5;
|
||||
query1.active := true;
|
||||
query1.MoveBy(20);
|
||||
|
||||
AssertEquals(5, THackDataLink(datalink1).Firstrecord);
|
||||
AssertEquals(4, datalink1.ActiveRecord);
|
||||
AssertEquals(21, query1.RecNo);
|
||||
|
||||
query1.active := False;
|
||||
|
||||
AssertEquals(0, THackDataLink(datalink1).Firstrecord);
|
||||
AssertEquals(0, datalink1.ActiveRecord);
|
||||
|
||||
query1.active := true;
|
||||
|
||||
AssertEquals(0, THackDataLink(datalink1).Firstrecord);
|
||||
AssertEquals(0, datalink1.ActiveRecord);
|
||||
AssertEquals(1, query1.RecNo);
|
||||
|
||||
finally
|
||||
datalink1.free;
|
||||
datasource1.free;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TTestDBBasics.TestBufDatasetCancelUpdates1;
|
||||
var i : byte;
|
||||
begin
|
||||
|
Loading…
Reference in New Issue
Block a user