From fb2c465f22e5c81e1621b05663d36064ed253f50 Mon Sep 17 00:00:00 2001 From: paul Date: Sun, 26 Dec 2010 12:21:05 +0000 Subject: [PATCH] tests: add Negative and Positive operators test git-svn-id: trunk@16641 - --- tests/test/terecs6.pp | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/test/terecs6.pp b/tests/test/terecs6.pp index f0a5551612..5a7b8c9aa3 100644 --- a/tests/test/terecs6.pp +++ b/tests/test/terecs6.pp @@ -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.