From 585ff9990112d03444ab5e326ffb5bf6e18b0f0a Mon Sep 17 00:00:00 2001 From: Baptiste Fontaine Date: Sat, 3 Jan 2015 14:32:26 +0100 Subject: antlr: test added Closes #35511. Signed-off-by: Jack Nagel --- Library/Formula/antlr.rb | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'Library/Formula') diff --git a/Library/Formula/antlr.rb b/Library/Formula/antlr.rb index 003b41046..3533b0217 100644 --- a/Library/Formula/antlr.rb +++ b/Library/Formula/antlr.rb @@ -1,5 +1,3 @@ -require "formula" - class Antlr < Formula homepage "http://www.antlr.org/" url "http://www.antlr.org/download/antlr-4.4-complete.jar" @@ -13,4 +11,24 @@ class Antlr < Formula java -classpath #{prefix}/antlr-#{version}-complete.jar:. org.antlr.v4.runtime.misc.TestRig "$@" EOS end + + test do + path = testpath/"Expr.g4" + path.write <<-EOS.undent + grammar Expr; + prog:\t(expr NEWLINE)* ; + expr:\texpr ('*'|'/') expr + |\texpr ('+'|'-') expr + |\tINT + |\t'(' expr ')' + ; + NEWLINE :\t[\\r\\n]+ ; + INT :\t[0-9]+ ; + EOS + ENV.prepend "CLASSPATH", "#{prefix}/antlr-#{version}-complete.jar", ":" + ENV.prepend "CLASSPATH", ".", ":" + system "#{bin}/antlr4", "Expr.g4" + system "javac", *Dir["Expr*.java"] + assert_match(/^$/, pipe_output("#{bin}/grun Expr prog", "22+20\n")) + end end -- cgit v1.2.3