tests: add Negative and Positive operators test

git-svn-id: trunk@16641 -
This commit is contained in:
paul 2010-12-26 12:21:05 +00:00
parent ee6fe6c4f5
commit fb2c465f22

View File

@ -34,6 +34,8 @@ type
class operator BitwiseXor(a, b: TFoo): TFoo;
class operator Inc(a: TFoo): TFoo;
class operator Dec(a: TFoo): TFoo;
class operator Negative(a: TFoo): TFoo;
class operator Positive(a: TFoo): TFoo;
end;
class operator TFoo.Explicit(a: TFoo): Integer;
@ -167,6 +169,17 @@ begin
Result.F := a.F - 1;
end;
class operator TFoo.Negative(a: TFoo): TFoo;
begin
Result.F := -a.F;
end;
class operator TFoo.Positive(a: TFoo): TFoo;
begin
// to check that operator is called change the result value
Result.F := a.F+1;
end;
var
a, b: TFoo;
i: integer;
@ -232,5 +245,11 @@ begin
halt(26);
if Integer(b) <> 2 then
halt(27);
b := -b;
if b.F <> -1 then
halt(28);
b := +b;
if b.F <> 0 then
halt(29);
WriteLn('ok');
end.