diff --git a/ChangeLog b/ChangeLog index c3c0f3175..be98c9a12 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-08-04 Alexandre Duret-Lutz + + * wrap/python/tests/ltlparse.py: New file. + * wrap/python/tests/Makefile.am (TESTS): Add it. + 2003-08-01 Alexandre Duret-Lutz * wrap/python/buddy.i: New file. diff --git a/wrap/python/tests/Makefile.am b/wrap/python/tests/Makefile.am index fb9101663..b9c1644f4 100644 --- a/wrap/python/tests/Makefile.am +++ b/wrap/python/tests/Makefile.am @@ -6,4 +6,5 @@ check_SCRIPTS = run TESTS = \ ltlsimple.py \ + ltlparse.py \ bddnqueen.py \ No newline at end of file diff --git a/wrap/python/tests/ltlparse.py b/wrap/python/tests/ltlparse.py new file mode 100755 index 000000000..f655de376 --- /dev/null +++ b/wrap/python/tests/ltlparse.py @@ -0,0 +1,27 @@ +import sys +import ltihooks +import spot + +e = spot.default_environment.instance() +p = spot.empty_parse_error_list() + +l = ['GFa', 'a U (((b)) xor c)', '!(FFx <=> Fx)', 'a \/ a \/ b \/ a \/ a']; + +for str1 in l: + f = spot.parse(str1, p, e, 0) + if spot.format_parse_errors(spot.get_cout(), str1, p): + sys.exit(1) + str2 = str(f) + spot.destroy(f) + print str2 + # Try to reparse the stringified formula + f = spot.parse(str2, p, e) + if spot.format_parse_errors(spot.get_cout(), str2, p): + sys.exit(1) + print f + spot.destroy(f) + +assert spot.atomic_prop.instance_count() == 0 +assert spot.binop.instance_count() == 0 +assert spot.unop.instance_count() == 0 +assert spot.multop.instance_count() == 0