print ecma version if test failed

This commit is contained in:
develar
2012-06-09 14:20:38 +04:00
parent 66984a5f23
commit 073fb6c499
2 changed files with 8 additions and 6 deletions
@@ -17,6 +17,7 @@
package org.jetbrains.k2js.test.rhino;
import org.jetbrains.annotations.Nullable;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.NativeJavaObject;
/**
@@ -33,13 +34,13 @@ public class RhinoFunctionNativeObjectResultChecker extends RhinoFunctionResultC
}
@Override
protected void assertResultValid(Object result) {
protected void assertResultValid(Object result, Context context) {
if (result instanceof NativeJavaObject) {
NativeJavaObject nativeJavaObject = (NativeJavaObject) result;
Object unwrap = nativeJavaObject.unwrap();
super.assertResultValid(unwrap);
super.assertResultValid(unwrap, context);
} else {
super.assertResultValid(result);
super.assertResultValid(result, context);
}
}
}
@@ -44,11 +44,12 @@ public class RhinoFunctionResultChecker implements RhinoResultChecker {
@Override
public void runChecks(Context context, Scriptable scope) throws Exception {
Object result = evaluateFunction(context, scope);
assertResultValid(result);
assertResultValid(result, context);
}
protected void assertResultValid(Object result) {
assertEquals("Result of " + namespaceName + "." + functionName + "() is not what expected!", expectedResult, result);
protected void assertResultValid(Object result, Context context) {
String ecmaVersion = context.getLanguageVersion() == Context.VERSION_1_8 ? "ecma5" : "ecma3";
assertEquals("Result of " + namespaceName + "." + functionName + "() is not what expected (" + ecmaVersion + ")!", expectedResult, result);
String report = namespaceName + "." + functionName + "() = " + Context.toString(result);
System.out.println(report);
}