jakarta-bsf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject svn commit: r931290 - in /jakarta/bsf/branches/bsf3.x/testing: e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java
Date Tue, 06 Apr 2010 19:45:33 GMT
Author: sebb
Date: Tue Apr  6 19:45:32 2010
New Revision: 931290

URL: http://svn.apache.org/viewvc?rev=931290&view=rev
Log:
Check for implementation that does not support E4X and skip tests that depend on it.

Modified:
    jakarta/bsf/branches/bsf3.x/testing/e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java
    jakarta/bsf/branches/bsf3.x/testing/e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java

Modified: jakarta/bsf/branches/bsf3.x/testing/e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java
URL: http://svn.apache.org/viewvc/jakarta/bsf/branches/bsf3.x/testing/e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java?rev=931290&r1=931289&r2=931290&view=diff
==============================================================================
--- jakarta/bsf/branches/bsf3.x/testing/e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java
(original)
+++ jakarta/bsf/branches/bsf3.x/testing/e4x-1.6R7-Axiom/src/test/java/org/apache/bsf/testing/e4x/E4xAxiomTestCase.java
Tue Apr  6 19:45:32 2010
@@ -45,6 +45,10 @@ public class E4xAxiomTestCase extends Te
 	private ScriptEngine engine;
 	
 	public void testInvokeFunctionInXML() throws ScriptException, XMLStreamException, FactoryConfigurationError,
NoSuchMethodException {
+        if (!engineSupportsE4X(engine, "testInvokeFunctionInXML()")){
+            return;
+        }
+
 		engine.eval("function isXML(xml) { return typeof xml == 'xml'; }" );
 		assertTrue(engine instanceof Invocable);
 		Invocable invocableScript = (Invocable) engine;
@@ -57,6 +61,9 @@ public class E4xAxiomTestCase extends Te
 	}
 	
 	public void testInvokeFunctionOutXML() throws ScriptException, XMLStreamException, FactoryConfigurationError,
NoSuchMethodException {
+        if (!engineSupportsE4X(engine, "testInvokeFunctionOutXML()")){
+            return;
+        }
 		engine.eval("function hello(xml) { return <foo>{xml.b}</foo>; }" );
 		assertTrue(engine instanceof Invocable);
 		Invocable invocableScript = (Invocable) engine;
@@ -76,6 +83,9 @@ public class E4xAxiomTestCase extends Te
         Bindings bindings = engine.createBindings();
         bindings.put("o", o);
         Object x = engine.eval("typeof o", bindings);
+        if (!engineSupportsE4X(engine, "the rest of testE4X()")){
+            return;
+        }
         assertEquals("xml", x);
 	}
 	
@@ -92,4 +102,13 @@ public class E4xAxiomTestCase extends Te
         xmlHelper = XMLHelper.getArgHelper(engine);
     }
 
+    private static boolean engineSupportsE4X(ScriptEngine engine, String message){
+        final String name = engine.getClass().getName();
+        // This engine does not support E4X
+        if (name.equals("com.sun.script.javascript.RhinoScriptEngine")){
+            System.out.println("*** "+name + " does not support E4X, skipping "+message);
+            return false;
+        }
+        return true;
+    }
 }

Modified: jakarta/bsf/branches/bsf3.x/testing/e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java
URL: http://svn.apache.org/viewvc/jakarta/bsf/branches/bsf3.x/testing/e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java?rev=931290&r1=931289&r2=931290&view=diff
==============================================================================
--- jakarta/bsf/branches/bsf3.x/testing/e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java
(original)
+++ jakarta/bsf/branches/bsf3.x/testing/e4x/src/test/java/org/apache/bsf/testing/e4x/HelloTestCase.java
Tue Apr  6 19:45:32 2010
@@ -38,7 +38,7 @@ import org.mozilla.javascript.Context;
 import org.mozilla.javascript.ContextHelper;
 
 /**
- * Tests a basic JavaScrip/E4X invocation
+ * Tests a basic JavaScript/E4X invocation
  */
 public class HelloTestCase extends TestCase {
 	
@@ -70,6 +70,10 @@ public class HelloTestCase extends TestC
         OMElement om = convertor.toOMElement(o);
         assertEquals("<a><b>petra</b></a>", om.toString());
         
+        if (!engineSupportsE4X(engine, "rest of testE4X()")){
+            return;
+        }
+
         Bindings bindings = engine.createBindings();
         bindings.put("o", o);
         Object x = engine.eval("typeof o", bindings);
@@ -94,4 +98,14 @@ public class HelloTestCase extends TestC
             Context.exit();
         }
     }
+
+    private static boolean engineSupportsE4X(ScriptEngine engine, String message){
+        final String name = engine.getClass().getName();
+        // This engine does not support E4X
+        if (name.equals("com.sun.script.javascript.RhinoScriptEngine")){
+            System.out.println("*** "+name + " does not support E4X, skipping "+message);
+            return false;
+        }
+        return true;
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: bsf-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: bsf-dev-help@jakarta.apache.org


Mime
View raw message