From 18e1d567b647676c80f76df2e65a6b3347fc8ecf Mon Sep 17 00:00:00 2001 From: A Pottinger Date: Thu, 10 Feb 2022 08:43:24 -0800 Subject: [PATCH] Fix greedy multi-line string rule. Single character fix which adds test for and closes #398 by making the rule non-greedy. --- .../test/resources/multimultilinestr.expected | 35 +++++++++++++++++++ java/test/resources/multimultilinestr.pde | 14 ++++++++ 2 files changed, 49 insertions(+) create mode 100644 java/test/resources/multimultilinestr.expected create mode 100644 java/test/resources/multimultilinestr.pde diff --git a/java/test/resources/multimultilinestr.expected b/java/test/resources/multimultilinestr.expected new file mode 100644 index 000000000..1d339a9da --- /dev/null +++ b/java/test/resources/multimultilinestr.expected @@ -0,0 +1,35 @@ +import processing.core.*; +import processing.data.*; +import processing.event.*; +import processing.opengl.*; + +import java.util.HashMap; +import java.util.ArrayList; +import java.io.File; +import java.io.BufferedReader; +import java.io.PrintWriter; +import java.io.InputStream; +import java.io.OutputStream; +import java.io.IOException; + +public class multimultilinestr extends PApplet { + + public void setup() { +String testMultiline1 = "\nline1 \"\nline 2 \"\"\nline 3\nline 4"; +String testMultiline2 = "\nline5 \"\nline 6 \"\"\nline 7\nline 8"; + +println(testMultiline1); +println(testMultiline2); + + noLoop(); + } + + static public void main(String[] passedArgs) { + String[] appletArgs = new String[] { "multimultilinestr" }; + if (passedArgs != null) { + PApplet.main(concat(appletArgs, passedArgs)); + } else { + PApplet.main(appletArgs); + } + } +} diff --git a/java/test/resources/multimultilinestr.pde b/java/test/resources/multimultilinestr.pde new file mode 100644 index 000000000..22e5bcfef --- /dev/null +++ b/java/test/resources/multimultilinestr.pde @@ -0,0 +1,14 @@ +String testMultiline1 = """ +line1 " +line 2 "" +line 3 +line 4"""; + +String testMultiline2 = """ +line5 " +line 6 "" +line 7 +line 8"""; + +println(testMultiline1); +println(testMultiline2);