Well, I have a j9_foundation.java, and only needed 1 tiny change to
RunTest but when I tried to test, I found that ij still needs
java.sql.Driver. So I can't actually test this until I/you/someone
modifies ij...

So, here is j9_foundation for now, please let me know if it doesn't work...




Myrna


On 5/13/05, Daniel John Debrunner <[EMAIL PROTECTED]> wrote:
> Myrna van Lunteren wrote:
> 
> >>>>Note that with foundation, with wsdd5.6 there is no support for
> >>>>java.sql.* (you'll get an incompatible library error if you try) and
> >>>>with wctme5.7 foundation you are supposed to use jdbc.jar (again,
> >>>>database_enabler.jar will give incompatible library with jclFoun).
> >>>>Jdbc.jar does not have (for example) java.sql.DriverManager as that
> >>>>class is not in JSR169. So with foundation you have to run the test
> >>>>harness with java.sql.DataSource. I've never tried that.
> >>>
> >>>I have though :-)
> >>
> >>And? Details, please?
> 
> Sorry it took a while, I had to remember how to get the quoting correct
> in a shell script so I could provide a working example.
> BTW the tets harness property jvmflags is not documented in the testing
> read me file.
> 
> The test harness uses the ij properties ij.driver and ij.database (set
> to a JDBC URL) to specify the default connection for the tests. This
> works for .sql tests and .java tests that use the ij utility to start
> the database. However ij also supports similar properties to get the
> default connection via a datasource, and these override
> ij.driver/database :-)
> 
> ij.dataSource=<classname of data source>
> 
> Set the properties with any number of
> ij.dataSource.<bean property>=<value>
> 
> So here is an extract of a script to run tests using the (current :-)
> standard Derby data source
> 
> Dan.
> 
> -------
> 
> ds="-Dij.dataSource=org.apache.derby.jdbc.EmbeddedDataSource
> -Dij.dataSource.databaseName=wombat -Dij.dataSource.createDatabase=create"
> 
> # ensure flags are passed onto the spawned vm
> dsj="-Djvmflags=${ds}"
> 
> ${jre}/bin/java ${ds} "${dsj}"
> org.apache.derbyTesting.functionTests.harness.RunTest $*
> 
>
Index: java/testing/org/apache/derbyTesting/functionTests/harness/RunTest.java
===================================================================
--- java/testing/org/apache/derbyTesting/functionTests/harness/RunTest.java     
(revision 170410)
+++ java/testing/org/apache/derbyTesting/functionTests/harness/RunTest.java     
(working copy)
@@ -883,8 +883,10 @@
                 {
                     if (System.getProperty("java.vm.name").equals("J9"))
                     {
-                        if 
(System.getProperty("com.ibm.oti.configuration").equals("foun"))
+                        if 
(System.getProperty("com.ibm.oti.configuration").equals("foun10"))
+                        {
                             jvmName = "j9_foundation";
+                        }
                         else
                         {
                             // for reporting; first extend javaVersion
Index: 
java/testing/org/apache/derbyTesting/functionTests/harness/j9_foundation.java
===================================================================
--- 
java/testing/org/apache/derbyTesting/functionTests/harness/j9_foundation.java   
    (revision 0)
+++ 
java/testing/org/apache/derbyTesting/functionTests/harness/j9_foundation.java   
    (revision 0)
@@ -0,0 +1,135 @@
+/*
+
+   Derby - Class org.apache.derbyTesting.functionTests.harness.j9_foundation
+
+   Copyright 2003, 2005 The Apache Software Foundation or its licensors, as 
applicable.
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+ */
+
+package org.apache.derbyTesting.functionTests.harness;
+import java.util.Vector;
+import java.util.StringTokenizer;
+import java.util.Properties;
+
+/**
+  <p>This class is for IBM's J9 jdk 1.3., foundation class library; v 2.2 
(wctme5.7)
+
+  @author mayrna
+ */
+public class j9_foundation extends jvm {
+
+    public String getName(){return "j9_foundation";}
+    public j9_foundation(boolean noasyncgc, boolean verbosegc, boolean 
noclassgc,
+    long ss, long oss, long ms, long mx, String classpath, String prof,
+    boolean verify, boolean noverify, boolean nojit, Vector D) {
+        super(noasyncgc,verbosegc,noclassgc,ss,oss,ms,mx,classpath,prof,
+               verify,noverify,nojit,D);
+    }
+    // more typical use:
+    public j9_foundation(String classpath, Vector D) {
+        super(classpath,D);
+    }
+    // more typical use:
+    public j9_foundation(long ms, long mx, String classpath, Vector D) {
+        super(ms,mx,classpath,D);
+    }
+    // actual use
+    public j9_foundation() {
+       Properties sp = System.getProperties();
+       String srvJvm = sp.getProperty("serverJvm");
+       if ((srvJvm!=null) && (srvJvm.toUpperCase().startsWith("J9")))
+       {
+               String wshome = guessWSHome();
+               // note, may have to use separator instead of hardcoding the 
slashes...
+               setJavaCmd(wshome+"/wctme5.7/ive/bin/j9");
+       }
+       else
+               setJavaCmd("j9");
+    }
+
+    // return the command line to invoke this VM.  The caller then adds
+    // the class and program arguments.
+    public Vector getCommandLine() 
+    {
+        StringBuffer sb = new StringBuffer();
+        Vector v = super.getCommandLine();
+        appendOtherFlags(sb);
+        String s = sb.toString();
+        StringTokenizer st = new StringTokenizer(s);
+        while (st.hasMoreTokens())
+        {
+            v.addElement(st.nextToken());
+        }
+        return v;
+       }
+
+    public void appendOtherFlags(StringBuffer sb)
+    {
+        Properties sp = System.getProperties();
+        String bootcp = sp.getProperty("bootcp");
+        String srvJvm = sp.getProperty("serverJvm");
+        // if we're coming in to be the server jvm for networkserver testing 
on j9,
+        // bootcp is null, so we need to try to setup the bootclasspath from 
scratch
+        // for now, assume we're only interested in doing this for 
wctme5.7_foundation, worry about
+        // newer versions, multiple class libraries, or multiple releases 
later.
+        sb.append(" -jcl:foun");
+
+        if ((srvJvm !=null ) && (srvJvm.toUpperCase().startsWith("J9")))
+        {
+            String pathsep = System.getProperty("path.separator");
+            String wshome = guessWSHome();
+            // note, assuming jclFoundation classes sit under 
wctme5.7/ive/lib/jclFoundation10
+            //       and that jdbc.jar sits under wctme5.7/ive/lib
+            // note, may have to switch to sep instead of hardcoding the 
slashes...
+            sb.append(" -Xbootclasspath/a:" + wshome + 
"/wctme5.7/ive/lib/jclFoundation10/classes.zip"
+                + pathsep + wshome + 
"/wctme5.7/ive/lib/jclFoundation10/locale.zip"
+                + pathsep + wshome + "/wctme5.7/ive/lib/jdbc.jar");
+        } 
+        else
+            sb.append(" -Xbootclasspath/a:" + bootcp);
+        if (noasyncgc) warn("j9_foundation does not support noasyncgc");
+        if (verbosegc) sb.append(" -verbose:gc");
+        if (noclassgc) warn("j9_foundation does not support noclassgc");
+        if (ss>=0) warn("j9_foundation does not support ss");
+        if (oss>=0) warn("j9_foundation does not support oss");
+        if (ms>=0) {
+          sb.append(" -Xss");
+          sb.append(ms);
+                 //sb.append("k");
+        }
+        if (mx>=0) {
+          sb.append(" -Xmx");
+          sb.append(mx);
+                 //sb.append("k");
+        }
+        if (classpath!=null) warn("j9_foundation does not support classpath, 
use -Xbootclasspath,-Xbootclasspath/p,-Xbootclasspath/a"); 
+        if (prof!=null) warn("j9_foundation does not support prof");
+        if (verify) sb.append(" -verify");
+        if (noverify) warn("j9_foundation does not support noverify");
+        if (nojit) sb.append(" -Xnojit");
+        if (D != null)
+          for (int i=0; i<D.size();i++) {
+               sb.append(" -D");
+               sb.append((String)(D.elementAt(i)));
+          }
+    }
+       public String getDintro() { return "-D"; }
+
+       protected void setSecurityProps()
+       {
+               System.out.println("Note: J9 (foundation) tests do not run with 
security manager");             
+       }
+
+}

Property changes on: 
java/testing/org/apache/derbyTesting/functionTests/harness/j9_foundation.java
___________________________________________________________________
Name: svn:eol-style
   + native

Reply via email to