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