< prev index next >

test/src/jdk/nashorn/api/scripting/test/InvocableTest.java

Print this page




  23  * questions.
  24  */
  25 
  26 package jdk.nashorn.api.scripting.test;
  27 
  28 import static org.testng.Assert.assertEquals;
  29 import static org.testng.Assert.fail;
  30 import java.util.Objects;
  31 import java.util.function.Function;
  32 import javax.script.Invocable;
  33 import javax.script.ScriptContext;
  34 import javax.script.ScriptEngine;
  35 import javax.script.ScriptEngineManager;
  36 import javax.script.ScriptException;
  37 import javax.script.SimpleScriptContext;
  38 import org.testng.Assert;
  39 import org.testng.annotations.Test;
  40 
  41 /**
  42  * Tests for javax.script.Invocable implementation of nashorn.




  43  */
  44 @SuppressWarnings("javadoc")
  45 public class InvocableTest {
  46 
  47     private static void log(final String msg) {
  48         org.testng.Reporter.log(msg, true);
  49     }
  50 
  51     @Test
  52     public void invokeMethodTest() {
  53         final ScriptEngineManager m = new ScriptEngineManager();
  54         final ScriptEngine e = m.getEngineByName("nashorn");
  55 
  56         try {
  57             e.eval("var Example = function() { this.hello = function() { return 'Hello World!'; };}; myExample = new Example();");
  58             final Object obj = e.get("myExample");
  59             final Object res = ((Invocable) e).invokeMethod(obj, "hello");
  60             assertEquals(res, "Hello World!");
  61         } catch (final Exception exp) {
  62             exp.printStackTrace();




  23  * questions.
  24  */
  25 
  26 package jdk.nashorn.api.scripting.test;
  27 
  28 import static org.testng.Assert.assertEquals;
  29 import static org.testng.Assert.fail;
  30 import java.util.Objects;
  31 import java.util.function.Function;
  32 import javax.script.Invocable;
  33 import javax.script.ScriptContext;
  34 import javax.script.ScriptEngine;
  35 import javax.script.ScriptEngineManager;
  36 import javax.script.ScriptException;
  37 import javax.script.SimpleScriptContext;
  38 import org.testng.Assert;
  39 import org.testng.annotations.Test;
  40 
  41 /**
  42  * Tests for javax.script.Invocable implementation of nashorn.
  43  *
  44  * @test
  45  * @build jdk.nashorn.api.scripting.test.VariableArityTestInterface jdk.nashorn.api.scripting.test.InvocableTest
  46  * @run testng jdk.nashorn.api.scripting.test.InvocableTest
  47  */
  48 @SuppressWarnings("javadoc")
  49 public class InvocableTest {
  50 
  51     private static void log(final String msg) {
  52         org.testng.Reporter.log(msg, true);
  53     }
  54 
  55     @Test
  56     public void invokeMethodTest() {
  57         final ScriptEngineManager m = new ScriptEngineManager();
  58         final ScriptEngine e = m.getEngineByName("nashorn");
  59 
  60         try {
  61             e.eval("var Example = function() { this.hello = function() { return 'Hello World!'; };}; myExample = new Example();");
  62             final Object obj = e.get("myExample");
  63             final Object res = ((Invocable) e).invokeMethod(obj, "hello");
  64             assertEquals(res, "Hello World!");
  65         } catch (final Exception exp) {
  66             exp.printStackTrace();


< prev index next >