< prev index next >

test/script/nosecurity/JDK-8067215.js

Print this page

        

@@ -30,11 +30,10 @@
  * @fork
  */
 
 var intType    = Java.type("int");
 var doubleType = Java.type("double");
-var longType   = Java.type("long");
 var objectType = Java.type("java.lang.Object");
 
 var Context = Java.type("jdk.nashorn.internal.runtime.Context");
 var JSType  = Java.type("jdk.nashorn.internal.runtime.JSType");
 

@@ -56,27 +55,20 @@
         if (prop.hasDualFields() !== dualFields) {
             throw new Error("Wrong property flags: " + prop);
         }
         if (prop.getType() != getExpectedType(obj[key])) {
             throw new Error("Wrong property type: " + prop.getType() + " // " + getExpectedType(obj[key]));
-
         }
     }
 }
 
 function getExpectedType(value) {
     if (!dualFields) {
         return objectType.class;
     }
-    if (JSType.isRepresentableAsInt(value)) {
-        return intType.class;
-    }
-    if (JSType.isRepresentableAsLong(value)) {
-        return longType.class;
-    }
-    if (JSType.isNumber(value)) {
-        return doubleType.class;
+    if (typeof value === "number") {
+        return JSType.isRepresentableAsInt(value) ? intType.class : doubleType.class;
     }
     return objectType.class;
 }
 
 var o = {
< prev index next >