This is an automated email from the ASF dual-hosted git repository. henrib pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-jexl.git
commit 7ac7bc393547158087105a5126c1610ceef9b808 Author: Henrib <hbies...@gmail.com> AuthorDate: Wed Dec 11 19:24:20 2024 +0100 JEXL: scripting nitpicks; --- src/main/java/org/apache/commons/jexl3/scripting/Main.java | 8 +++++--- .../org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java | 6 ++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/apache/commons/jexl3/scripting/Main.java b/src/main/java/org/apache/commons/jexl3/scripting/Main.java index 86e076f7..7ec81c65 100644 --- a/src/main/java/org/apache/commons/jexl3/scripting/Main.java +++ b/src/main/java/org/apache/commons/jexl3/scripting/Main.java @@ -20,6 +20,7 @@ package org.apache.commons.jexl3.scripting; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; +import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.nio.charset.Charset; import java.nio.file.Files; @@ -52,15 +53,16 @@ public class Main { */ public static void main(final String[] args) throws Exception { try(BufferedReader in = args.length == 1? read(Paths.get(args[0])) : read(null); - PrintWriter out = new PrintWriter(System.out);) { + PrintWriter out = new PrintWriter( + new OutputStreamWriter(System.out, Charset.defaultCharset()),true)) { run(in, out, args); } } - static void run(BufferedReader in, PrintWriter out, final Object... args) throws Exception { + static void run(BufferedReader in, PrintWriter out, final Object[] args) throws Exception { final JexlScriptEngineFactory fac = new JexlScriptEngineFactory(); final ScriptEngine engine = fac.getScriptEngine(); - if (args.length > 0) { + if (args != null && args.length > 0) { engine.put("args", args); final Object value = engine.eval(in); out.println(">>: " + value); diff --git a/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java b/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java index c9917781..1c680f59 100644 --- a/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java +++ b/src/test/java/org/apache/commons/jexl3/scripting/JexlScriptEngineTest.java @@ -262,12 +262,11 @@ public class JexlScriptEngineTest { assertTrue(time2 <= System.currentTimeMillis()); } - @Test void testMain0() throws Exception { StringWriter strw = new StringWriter(); StringReader strr = new StringReader("a=20\nb=22\na+b\n//q!\n"); - Main.run(new BufferedReader(strr), new PrintWriter(strw), new String[0]); + Main.run(new BufferedReader(strr), new PrintWriter(strw), null); String ctl = "> >> 20\n" + "> >> 22\n" + "> >> 42\n" + @@ -275,12 +274,11 @@ public class JexlScriptEngineTest { Assertions.assertEquals(ctl, strw.toString()); } - @Test void testMain1() throws Exception { StringWriter strw = new StringWriter(); StringReader strr = new StringReader("args[0]+args[1]"); - Main.run(new BufferedReader(strr), new PrintWriter(strw), 20, 22); + Main.run(new BufferedReader(strr), new PrintWriter(strw), new Object[]{20, 22}); String ctl = ">>: 42\n"; Assertions.assertEquals(ctl, strw.toString()); }