[antlr-interest] Status of gUnit?

Alan D. Cabrera list at toolazydogs.com
Sat Feb 26 12:37:07 PST 2011


As an alternative to gUnit I invite you to take a look at

https://github.com/maguro/aunit

Comments and suggestions are welcome.


Regards,
Alan

On Feb 23, 2011, at 11:28 AM, antlr at xrad.org wrote:

> 
> 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



More information about the antlr-interest mailing list