From aa4aefdc5989d18873f999b04ae8dbdd8e9ddd58 Mon Sep 17 00:00:00 2001 From: jdf Date: Thu, 18 Mar 2010 14:47:06 +0000 Subject: [PATCH] More tests. Caught a regression! --- app/test/resources/bug1064.expected | 26 +++++++++ app/test/resources/bug1064.pde | 1 + app/test/resources/bug1145.pde | 1 + app/test/resources/bug1362.expected | 26 +++++++++ app/test/resources/bug1362.pde | 1 + app/test/resources/bug1442.expected | 26 +++++++++ app/test/resources/bug1442.pde | 3 + app/test/resources/bug598.expected | 55 +++++++++++++++++++ app/test/resources/bug598.pde | 29 ++++++++++ .../test/processing/parsing/ParserTests.java | 28 +++++++++- 10 files changed, 195 insertions(+), 1 deletion(-) create mode 100644 app/test/resources/bug1064.expected create mode 100644 app/test/resources/bug1064.pde create mode 100644 app/test/resources/bug1145.pde create mode 100644 app/test/resources/bug1362.expected create mode 100644 app/test/resources/bug1362.pde create mode 100644 app/test/resources/bug1442.expected create mode 100644 app/test/resources/bug1442.pde create mode 100644 app/test/resources/bug598.expected create mode 100644 app/test/resources/bug598.pde diff --git a/app/test/resources/bug1064.expected b/app/test/resources/bug1064.expected new file mode 100644 index 000000000..b39b09a54 --- /dev/null +++ b/app/test/resources/bug1064.expected @@ -0,0 +1,26 @@ +import processing.core.*; +import processing.xml.*; + +import java.applet.*; +import java.awt.Dimension; +import java.awt.Frame; +import java.awt.event.MouseEvent; +import java.awt.event.KeyEvent; +import java.awt.event.FocusEvent; +import java.awt.Image; +import java.io.*; +import java.net.*; +import java.text.*; +import java.util.*; +import java.util.zip.*; +import java.util.regex.*; + +public class bug1064 extends PApplet { + public void setup() { +// import "; + noLoop(); +} + static public void main(String args[]) { + PApplet.main(new String[] { "--bgcolor=null", "bug1064" }); + } +} diff --git a/app/test/resources/bug1064.pde b/app/test/resources/bug1064.pde new file mode 100644 index 000000000..d8ac00211 --- /dev/null +++ b/app/test/resources/bug1064.pde @@ -0,0 +1 @@ +// import "; \ No newline at end of file diff --git a/app/test/resources/bug1145.pde b/app/test/resources/bug1145.pde new file mode 100644 index 000000000..a54f87230 --- /dev/null +++ b/app/test/resources/bug1145.pde @@ -0,0 +1 @@ +import processing; diff --git a/app/test/resources/bug1362.expected b/app/test/resources/bug1362.expected new file mode 100644 index 000000000..f5f47be9c --- /dev/null +++ b/app/test/resources/bug1362.expected @@ -0,0 +1,26 @@ +import processing.core.*; +import processing.xml.*; + +import java.applet.*; +import java.awt.Dimension; +import java.awt.Frame; +import java.awt.event.MouseEvent; +import java.awt.event.KeyEvent; +import java.awt.event.FocusEvent; +import java.awt.Image; +import java.io.*; +import java.net.*; +import java.text.*; +import java.util.*; +import java.util.zip.*; +import java.util.regex.*; + +public class bug1362 extends PApplet { + public void setup() { +if (true) {} else { new String(); } + noLoop(); +} + static public void main(String args[]) { + PApplet.main(new String[] { "--bgcolor=null", "bug1362" }); + } +} diff --git a/app/test/resources/bug1362.pde b/app/test/resources/bug1362.pde new file mode 100644 index 000000000..6cb8bc6b8 --- /dev/null +++ b/app/test/resources/bug1362.pde @@ -0,0 +1 @@ +if (true) {} else { new String(); } \ No newline at end of file diff --git a/app/test/resources/bug1442.expected b/app/test/resources/bug1442.expected new file mode 100644 index 000000000..a499b7f9a --- /dev/null +++ b/app/test/resources/bug1442.expected @@ -0,0 +1,26 @@ +import processing.core.*; +import processing.xml.*; + +import java.applet.*; +import java.awt.Dimension; +import java.awt.Frame; +import java.awt.event.MouseEvent; +import java.awt.event.KeyEvent; +import java.awt.event.FocusEvent; +import java.awt.Image; +import java.io.*; +import java.net.*; +import java.text.*; +import java.util.*; +import java.util.zip.*; +import java.util.regex.*; + +public class bug1442 extends PApplet { + +public float a() { + return 1.0f; +} + static public void main(String args[]) { + PApplet.main(new String[] { "--bgcolor=null", "bug1442" }); + } +} diff --git a/app/test/resources/bug1442.pde b/app/test/resources/bug1442.pde new file mode 100644 index 000000000..904a472d5 --- /dev/null +++ b/app/test/resources/bug1442.pde @@ -0,0 +1,3 @@ +float a() { + return 1.0; +} \ No newline at end of file diff --git a/app/test/resources/bug598.expected b/app/test/resources/bug598.expected new file mode 100644 index 000000000..396e4cdc6 --- /dev/null +++ b/app/test/resources/bug598.expected @@ -0,0 +1,55 @@ +import processing.core.*; +import processing.xml.*; + +import static java.lang.Math.tanh; +import java.util.concurrent.Callable; + +import java.applet.*; +import java.awt.Dimension; +import java.awt.Frame; +import java.awt.event.MouseEvent; +import java.awt.event.KeyEvent; +import java.awt.event.FocusEvent; +import java.awt.Image; +import java.io.*; +import java.net.*; +import java.text.*; +import java.util.*; +import java.util.zip.*; +import java.util.regex.*; + +public class bug598 extends PApplet { + +// java 5 torture test + + + + +private static Comparator rotarapmoc = new Comparator() { + public int compare(final String o1, final String o2) + { + return o1.charAt(o1.length() - 1) - o2.charAt(o2.length() - 1); + } +}; + +final void printClass(T t) { + println(t.getClass()); +} +public final List sortem(final String... strings) { + Arrays.sort(strings, rotarapmoc); + return Arrays.asList(strings); +} + +final Map> +charlesDeGaulle = new HashMap>(); + +public void setup() { + charlesDeGaulle.put("banana", new HashSet()); + charlesDeGaulle.get("banana").add(0); + System.out.println(sortem("aztec", "maya", "spanish", "portuguese")); + printClass(12.d); +} + static public void main(String args[]) { + PApplet.main(new String[] { "--bgcolor=null", "bug598" }); + } +} diff --git a/app/test/resources/bug598.pde b/app/test/resources/bug598.pde new file mode 100644 index 000000000..c8efc6655 --- /dev/null +++ b/app/test/resources/bug598.pde @@ -0,0 +1,29 @@ +// java 5 torture test + +import static java.lang.Math.tanh; +import java.util.concurrent.Callable; + +private static Comparator rotarapmoc = new Comparator() { + public int compare(final String o1, final String o2) + { + return o1.charAt(o1.length() - 1) - o2.charAt(o2.length() - 1); + } +}; + +final void printClass(T t) { + println(t.getClass()); +} +final List sortem(final String... strings) { + Arrays.sort(strings, rotarapmoc); + return Arrays.asList(strings); +} + +final Map> +charlesDeGaulle = new HashMap>(); + +void setup() { + charlesDeGaulle.put("banana", new HashSet()); + charlesDeGaulle.get("banana").add(0); + System.out.println(sortem("aztec", "maya", "spanish", "portuguese")); + printClass(12.d); +} diff --git a/app/test/src/test/processing/parsing/ParserTests.java b/app/test/src/test/processing/parsing/ParserTests.java index 9090a9361..27eb2c323 100644 --- a/app/test/src/test/processing/parsing/ParserTests.java +++ b/app/test/src/test/processing/parsing/ParserTests.java @@ -115,7 +115,6 @@ public class ParserTests { + expectedLine); } final String e = compilerResult.getStderr().split("\n")[0]; - System.err.println(e); final Matcher m = Pattern.compile(":(\\d+):\\s+(.+)$").matcher(e); m.find(); assertEquals(expectedMessage, m.group(2)); @@ -134,6 +133,8 @@ public class ParserTests { final ProcessResult compilerResult = COMPILER.compile(id, program); if (!compilerResult.succeeded()) { + System.err.println(program); + System.err.println("----------------------------"); System.err.println(compilerResult.getStderr()); fail("Compilation failed with status " + compilerResult.getResult()); } @@ -209,6 +210,11 @@ public class ParserTests { expectRecognitionException("bug507", "expecting EOF, found 'else'", 5); } + @Test + public void bug598() { + expectGood("bug598"); + } + @Test public void bug631() { expectGood("bug631"); @@ -224,6 +230,26 @@ public class ParserTests { expectCompilerException("bug820", "x1 is already defined in setup()", 21); } + @Test + public void bug1064() { + expectGood("bug1064"); + } + + @Test + public void bug1145() { + expectCompilerException("bug1145", "'.' expected", 4); + } + + @Test + public void bug1362() { + expectGood("bug1362"); + } + + @Test + public void bug1442() { + expectGood("bug1442"); + } + @Test public void bug1511() { expectGood("bug1511");