From e47a1a6517bc593544ef2295e95c89c5072d9cf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lomig=20Me=CC=81gard?= <lomig.megard@epfl.ch> Date: Tue, 11 Mar 2014 18:44:05 +0100 Subject: [PATCH] Added test for postTraversal. --- .../leon/test/purescala/TreeOpsTests.scala | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/test/scala/leon/test/purescala/TreeOpsTests.scala b/src/test/scala/leon/test/purescala/TreeOpsTests.scala index 790bf7d57..d86c4866e 100644 --- a/src/test/scala/leon/test/purescala/TreeOpsTests.scala +++ b/src/test/scala/leon/test/purescala/TreeOpsTests.scala @@ -119,6 +119,23 @@ class TreeOpsTests extends LeonTestSuite { assert(eq4 != None) assert(eq4.get === eq) assert(extractEquals(r4)._1 === None) + } + test("pre and post traversal") { + val expr = Plus(IntLiteral(1), Minus(IntLiteral(2), IntLiteral(3))) + var res = "" + def f(e: Expr): Unit = e match { + case IntLiteral(i) => res += i + case _ : Plus => res += "P" + case _ : Minus => res += "M" + } + + preTraversal(f)(expr) + assert(res === "P1M23") + + res = "" + postTraversal(f)(expr) + assert(res === "123MP") } + } -- GitLab