Hi there, I'm wondering what the status of gUnit is these days? The SimpleC example on the introductory web page fails when run against examples-v3/java/LL-star/SimpleC.g, and various experiments of mine don't seem to come out as expected either.
http://www.antlr.org/wiki/display/ANTLR3/gUnit+-+Grammar+Unit+Testing .. as is, this fails because "int x;" -> OK doesn't appear to be valid in the current grammar (I'm using antlr-3.3-complete.jar) --- the "->" appears to be the problem, but if I remove it then I get unexpected failures --- on the above test, for example, all four of the OKs actually FAIL, even though the web page suggests that three of them should pass: ----------------------------------------------------------------------- executing testsuite for grammar:SimpleC with 11 tests ----------------------------------------------------------------------- 6 failures found: test2 (variable, line7) - expected: OK actual: FAIL test3 (functionHeader, line11) - expected: int actual: Invalid input test4 (program, line15) - expected: OK actual: FAIL test5 (program, line20) - expected: OK actual: FAIL test6 (program, line22) - expected: actual: Invalid input test8 (ID, line28) - expected: OK actual: extra text found, '@999' Tests run: 11, Failures: 6 I get the same experience in my own code. This grammar: grammar Simple; input : 'yes' ; when run with this test: gunit Simple; input: "yes" OK "x" FAIL fails as follows: ----------------------------------------------------------------------- executing testsuite for grammar:Simple with 2 tests ----------------------------------------------------------------------- 1 failures found: test1 (input, line3) - expected: OK actual: FAIL Tests run: 2, Failures: 1 Finally, the thing I would really like to do is to test my rewriting grammar translator. This doesn't work either --- there seems to be a fundamental problem with rewriting grammars in gUnit's internals: grammar Simple; options { output=template; rewrite=true; } input : 'yes' -> template() "no" ; tested with this: gunit Simple; input: "yes" -> "no" results in this: ----------------------------------------------------------------------- executing testsuite for grammar:Simple with 1 tests ----------------------------------------------------------------------- 1 failures found: test1 (input, line3) - expected: no actual: java.lang.ClassCastException: org.antlr.runtime.CommonTokenStream can not be cast to org.antlr.runtime.TokenRewriteStream Tests run: 1, Failures: 1 ... any suggestions? I tried rebuilding gUnit after editing the offending CommonTokenStream declarations in gUnitExecutor to TokenRewriteStreams --- just to see if it helped --- and it does make things work again, at least with this trivial example. Not so clear with more complex stuff though. Something similar to this seemed to be reported a few years back (without official response), so I'm wondering whether gUnit's no longer actively maintained? Conrad List: http://www.antlr.org/mailman/listinfo/antlr-interest Unsubscribe: http://www.antlr.org/mailman/options/antlr-interest/your-email-address -- You received this message because you are subscribed to the Google Groups "il-antlr-interest" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/il-antlr-interest?hl=en.
