From bb4e3e01b5ec1e2cfbd3d6e274750e34542d72f0 Mon Sep 17 00:00:00 2001 From: Cliff Click Date: Fri, 16 Aug 2024 14:34:34 -0700 Subject: Add TypeInteger ranges --- .../java/com/seaofnodes/simple/Chapter06Test.java | 4 +-- .../java/com/seaofnodes/simple/Chapter11Test.java | 2 +- .../java/com/seaofnodes/simple/Chapter14Test.java | 33 ++++++++++++++++++++-- 3 files changed, 34 insertions(+), 5 deletions(-) (limited to 'chapter14/src/test/java/com/seaofnodes') diff --git a/chapter14/src/test/java/com/seaofnodes/simple/Chapter06Test.java b/chapter14/src/test/java/com/seaofnodes/simple/Chapter06Test.java index 472e2db3..cddf0ae2 100644 --- a/chapter14/src/test/java/com/seaofnodes/simple/Chapter06Test.java +++ b/chapter14/src/test/java/com/seaofnodes/simple/Chapter06Test.java @@ -27,10 +27,10 @@ return 1; int a = 1; if (arg) a = 2; -return (arg < a) < 3; +return (arg < a) < 3; // Because (arg < a) is a bool/uint1/[0-1], its always less than 3 """); StopNode stop = parser.parse().iterate(); - assertEquals("return ((arg 2 ) c = 1; +return c; +"""); + StopNode stop = parser.parse(false).iterate(false); + assertEquals("return 99;", stop.toString()); + assertEquals(99L, Evaluator.evaluate(stop, 0)); + } + + @Test + public void testU8() { + Parser parser = new Parser( +""" +u8 b = 123; +b = b + 456;// Truncate +return 67; +"""); + StopNode stop = parser.parse(false).iterate(false); + assertEquals("return 67;", stop.toString()); + assertEquals(67, Evaluator.evaluate(stop, 0)); + } + } -- cgit v1.2.3