[Nice-commit] Nice/src/nice/tools/testsuite TestNice.java,1.31,1.32 TestCase.java,1.33,1.34
Brought to you by:
bonniot
|
From: Daniel B. <bo...@us...> - 2005-03-23 17:56:39
|
Update of /cvsroot/nice/Nice/src/nice/tools/testsuite In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16378/src/nice/tools/testsuite Modified Files: TestNice.java TestCase.java Log Message: Allow testcases to be run in a distinct JVM. Index: TestCase.java =================================================================== RCS file: /cvsroot/nice/Nice/src/nice/tools/testsuite/TestCase.java,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** TestCase.java 21 Mar 2005 21:25:57 -0000 1.33 --- TestCase.java 23 Mar 2005 17:56:29 -0000 1.34 *************** *** 370,373 **** --- 370,388 ---- } + public void runJVM(String jvm, String main) throws TestSuiteException { + try { + Process p = Runtime.getRuntime().exec(jvm + " -classpath classes:" + TestNice.getTempFolder() + " " + main); + CharArrayWriter out = new CharArrayWriter(); + int exitValue = nice.tools.compiler.dispatch.waitFor(p, out); + // Print the output of the execution. + System.out.println(out.toString()); + if (exitValue != 0) + throw new TestSuiteException("Exit code: " + exitValue); + } + catch(IOException e) { + throw new TestSuiteException(e.getMessage()); + } + } + /** * Runs the main method of the testcase. Only if main method exists and *************** *** 397,400 **** --- 412,421 ---- && ! _dontCompilePackages.contains(sourceFile.getPackage())) { + if (TestNice.getJVM() != null) + { + runJVM(TestNice.getJVM(), sourceFile.getPackage() + ".fun"); + continue; + } + ClassLoader loader = TestNice.getClassLoader(); try { Index: TestNice.java =================================================================== RCS file: /cvsroot/nice/Nice/src/nice/tools/testsuite/TestNice.java,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** TestNice.java 23 Feb 2005 16:57:57 -0000 1.31 --- TestNice.java 23 Mar 2005 17:56:29 -0000 1.32 *************** *** 143,146 **** --- 143,154 ---- /** + A JVM with which to run generated code (in a separate process). + Useful for testing alternative JVMs like Kaffe without using them for + running the testengine and the compilation itself. + */ + private static String _jvm = null; + + + /** * TODO * *************** *** 273,276 **** --- 281,286 ---- else if ("-gcc".equalsIgnoreCase(s)) setGcc(args[i++]); + else if ("-jvm".equalsIgnoreCase(s)) + setJvm(args[i++]); else if ("-comment".equalsIgnoreCase(s)) _writeComments = true; *************** *** 318,321 **** --- 328,335 ---- + private static void setJvm(String jvm) { + _jvm = jvm; + } + /** *************** *** 542,545 **** --- 556,564 ---- + static String getJVM() { + return _jvm; + } + + /** |