mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-12-15 20:10:38 +01:00
fcl-db: test for negative integer filters (issue #25168).
git-svn-id: trunk@25754 -
This commit is contained in:
parent
62bf453888
commit
cc5b720bfd
@ -137,6 +137,7 @@ type
|
|||||||
|
|
||||||
procedure TestFirst;
|
procedure TestFirst;
|
||||||
procedure TestIntFilter; //Integer range filter
|
procedure TestIntFilter; //Integer range filter
|
||||||
|
procedure TestNegativeIntFilter; //Negative integer filter; bug 25168
|
||||||
procedure TestOnFilter;
|
procedure TestOnFilter;
|
||||||
procedure TestStringFilter; //String filter expressions
|
procedure TestStringFilter; //String filter expressions
|
||||||
|
|
||||||
@ -1238,6 +1239,37 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TTestCursorDBBasics.TestNegativeIntFilter;
|
||||||
|
// Tests a negative integer range filter expression
|
||||||
|
var
|
||||||
|
Counter : integer;
|
||||||
|
begin
|
||||||
|
with DBConnector.GetNDataset(15) do
|
||||||
|
begin
|
||||||
|
// Change ID values to be negative instead of positive
|
||||||
|
while not(EOF) do
|
||||||
|
begin
|
||||||
|
Edit;
|
||||||
|
FieldByName('ID').AsInteger:=
|
||||||
|
-1*(FieldByname('ID').AsInteger);
|
||||||
|
Post;
|
||||||
|
Next;
|
||||||
|
end;
|
||||||
|
Close;
|
||||||
|
|
||||||
|
Filtered := True;
|
||||||
|
Filter := '(id>-9) and (id<-4)';
|
||||||
|
Open;
|
||||||
|
for Counter := -5 downto -8 do
|
||||||
|
begin
|
||||||
|
CheckEquals(Counter,FieldByName('ID').asinteger);
|
||||||
|
next;
|
||||||
|
end;
|
||||||
|
CheckTrue(EOF);
|
||||||
|
Close;
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TTestDBBasics.TestRecordcountAfterReopen;
|
procedure TTestDBBasics.TestRecordcountAfterReopen;
|
||||||
var
|
var
|
||||||
datalink1: tdatalink;
|
datalink1: tdatalink;
|
||||||
@ -1272,6 +1304,7 @@ begin
|
|||||||
with DBConnector.GetNDataset(15) do
|
with DBConnector.GetNDataset(15) do
|
||||||
begin
|
begin
|
||||||
Open;
|
Open;
|
||||||
|
|
||||||
// Check equality
|
// Check equality
|
||||||
Filter := '(name=''TestName3'')';
|
Filter := '(name=''TestName3'')';
|
||||||
Filtered := True;
|
Filtered := True;
|
||||||
@ -2651,7 +2684,7 @@ begin
|
|||||||
AParam.Free;
|
AParam.Free;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TTestCursorDBBasics.Testbug7007;
|
procedure TTestCursorDBBasics.TestBug7007;
|
||||||
|
|
||||||
var
|
var
|
||||||
datalink1: tdatalink;
|
datalink1: tdatalink;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user