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

Print this page

        

*** 719,728 **** --- 719,737 ---- }); e.eval("var x = 'xy'; x += 'z';c({a:x})"); assertTrue(invoked.get()); } + @Test + public void testLengthOnArrayLikeObjects() throws Exception { + final ScriptEngine e = new ScriptEngineManager().getEngineByName("nashorn"); + final Object val = e.eval("var arr = { length: 1, 0: 1}; arr.length"); + + assertTrue(Number.class.isAssignableFrom(val.getClass())); + assertTrue(((Number)val).intValue() == 1); + } + // @bug JDK-8068603: NashornScriptEngine.put/get() impls don't conform to NPE, IAE spec assertions @Test public void illegalBindingsValuesTest() throws Exception { final ScriptEngineManager manager = new ScriptEngineManager(); final ScriptEngine e = manager.getEngineByName("nashorn");