aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalph Sennhauser <sera@gentoo.org>2012-12-30 15:17:17 +0000
committerRalph Sennhauser <sera@gentoo.org>2012-12-30 15:17:17 +0000
commite8687740826ddb39acc22d8ac07c575a0efb8bfa (patch)
tree3b4d9ddf2f7de4aa6a2dda8b0b755ef39151f926 /tests/testsuite
parentDesktop files, icons, env.d and profile.d files as well as revdep-rebuild (diff)
downloadjava-config-e8687740826ddb39acc22d8ac07c575a0efb8bfa.tar.gz
java-config-e8687740826ddb39acc22d8ac07c575a0efb8bfa.tar.bz2
java-config-e8687740826ddb39acc22d8ac07c575a0efb8bfa.zip
Move tests to a tests directory.
svn path=/projects/java-config-2/trunk/; revision=9136
Diffstat (limited to 'tests/testsuite')
-rw-r--r--tests/testsuite/EnvironmentManager.py23
-rw-r--r--tests/testsuite/Package.py29
-rw-r--r--tests/testsuite/VM.py29
-rw-r--r--tests/testsuite/VersionManager.py107
-rw-r--r--tests/testsuite/Virtual.py40
-rw-r--r--tests/testsuite/__init__.py13
-rw-r--r--tests/testsuite/packages/ant-cores/package.env10
-rw-r--r--tests/testsuite/packages/ant-cores5/package.env10
-rw-r--r--tests/testsuite/packages/commons-logging/package.env11
-rw-r--r--tests/testsuite/packages/jdbc-mysql/package.env11
-rw-r--r--tests/testsuite/packages/jdbc-postgresql/package.env11
-rw-r--r--tests/testsuite/packages/log4j/package.env12
-rw-r--r--tests/testsuite/packages/test-package/package.env10
-rw-r--r--tests/testsuite/virtual_configs/jaf2
-rw-r--r--tests/testsuite/virtual_configs/jdbc2
-rw-r--r--tests/testsuite/virtual_configs/jmx2
-rw-r--r--tests/testsuite/virtual_configs/jmx22
-rw-r--r--tests/testsuite/vm_configs/blackdown-jdk-1.4.220
-rw-r--r--tests/testsuite/vm_configs/ibm-jdk-bin-1.517
-rw-r--r--tests/testsuite/vm_configs/sun-jdk-1.620
-rw-r--r--tests/testsuite/vm_configs/sun-jdk-1.719
-rw-r--r--tests/testsuite/vm_configs/sun-jre-bin-1.619
22 files changed, 419 insertions, 0 deletions
diff --git a/tests/testsuite/EnvironmentManager.py b/tests/testsuite/EnvironmentManager.py
new file mode 100644
index 0000000..fe810e8
--- /dev/null
+++ b/tests/testsuite/EnvironmentManager.py
@@ -0,0 +1,23 @@
+import unittest
+import os
+
+from java_config_2.EnvironmentManager import EnvironmentManager as em
+
+class TestEnvironmentManager(unittest.TestCase):
+ path=""
+
+ def test_load_packages(self):
+ em.packages = {}
+ em.load_packages()
+ self.assertEqual(len(em.packages), 11)
+
+ def test_get_package(self):
+ em.get_package('ant-cores')
+
+ def test_build_dep_path(self):
+ self.assertTrue( len(em.build_dep_path(["jdbc"], "CLASSPATH", set())) > 2)
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/Package.py b/tests/testsuite/Package.py
new file mode 100644
index 0000000..52c2405
--- /dev/null
+++ b/tests/testsuite/Package.py
@@ -0,0 +1,29 @@
+import unittest
+import os
+
+from java_config_2.Package import Package
+
+class TestPackage(unittest.TestCase):
+ path = os.path.join(os.path.dirname(__file__), 'packages', '%s/package.env')
+
+ def load_package(self, package):
+ config = TestPackage.path % package
+ return Package(package, config)
+
+ def setUp(self):
+ self.ant = self.load_package('ant-cores')
+
+ def test_package_info(self):
+ #using a package we definitely
+ #know will not be into the tree
+ #to ensure we ain't using real system packages.
+ self.assertEqual(self.ant.name(), 'ant-cores')
+ self.assertEqual(self.ant.description(), "Description: %s" % self.ant.name())
+ self.assertEqual(self.ant.target(), "1.4")
+ self.assertTrue(self.ant.query('JAVADOC_PATH'))
+ self.assertFalse(self.ant.query('VAR_SHOULD_NOT_EXIST'))
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/VM.py b/tests/testsuite/VM.py
new file mode 100644
index 0000000..a8ecff0
--- /dev/null
+++ b/tests/testsuite/VM.py
@@ -0,0 +1,29 @@
+import unittest
+from java_config_2.VM import VM
+import os
+
+class TestVM(unittest.TestCase):
+ path = os.path.join(os.path.dirname(__file__), 'vm_configs')
+
+ def load_vm(self, vm):
+ config = os.path.join(self.path,vm)
+ return VM(config)
+
+ def setUp(self):
+ self.ibm = self.load_vm('ibm-jdk-bin-1.5')
+ self.black = self.load_vm('blackdown-jdk-1.4.2')
+
+ def test_empty_provide(self):
+ self.assertFalse(self.ibm.provides("foobar"))
+
+ def test_name(self):
+ self.assertEqual(self.ibm.name(), 'ibm-jdk-bin-1.5')
+
+ def test_is_build_only(self):
+ self.assertTrue(self.black.is_build_only())
+ self.assertFalse(self.ibm.is_build_only())
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/VersionManager.py b/tests/testsuite/VersionManager.py
new file mode 100644
index 0000000..c5c69bd
--- /dev/null
+++ b/tests/testsuite/VersionManager.py
@@ -0,0 +1,107 @@
+import unittest
+import os
+from java_config_2.VersionManager import VersionManager
+from java_config_2.EnvironmentManager import EnvironmentManager as em
+
+class TestVersionManager(unittest.TestCase):
+ verman = VersionManager()
+
+ def setUp(self):
+ self.example_dep_vanilla = ">=virtual/jdk-1.5* dev-java/ant-core java-virtuals/jaf"
+ self.example_dep_or = "|| ( =virtual/jdk-1.5 =virtual/jdk-1.4 ) dev-java/ant-core java-virtuals/jaf"
+ self.example_dep_use = "java? ( >=virtual/jdk-1.5* ) dev-java/ant-core java-virtuals/jaf"
+
+ self.example_slot_dep_vanilla = "virtual/jdk:1.5 dev-java/ant-core:0 java-virtuals/jaf:0"
+ self.example_slot_dep_or = "|| ( virtual/jdk:1.4 virtual/jdk:1.4 ) dev-java/ant-core:0 java-virtual/jaf:0"
+ self.example_slot_dep_use = "java? ( virtual/jdk:1.5 ) dev-java/ant-core:0 java-virtuals/jaf:0"
+
+ def test_get_vm(self):
+ vm = self.verman.get_vm(">=virtual/jdk-1.5* java-virtuals/jaf")
+ self.assertEqual(vm.name(), 'sun-jdk-1.6')
+
+ vm = self.verman.get_vm(">=virtual/jdk-1.5* java-virtuals/jaf:0")
+ self.assertEqual(vm.name(), 'sun-jdk-1.6')
+
+ vm = self.verman.get_vm("virtual/jdk:1.5")
+ self.assertEqual(vm.name(), 'ibm-jdk-bin-1.5')
+
+ self.assertRaises(Exception, self.verman.get_vm, 'virtual/jdk:1.4')
+ self.assertRaises(Exception, self.verman.get_vm, '=virtual/jdk-1.4*', False)
+
+ vm = self.verman.get_vm('virtual/jdk:1.4', True)
+ self.assertTrue(vm.name(), 'blackdown-jdk-1.4.2')
+
+ self.assertRaises(Exception, self.verman.get_vm, 'virtual/jdk:1.4 dev-java/test-package:0')
+
+ def test_filter_depend_vanilla(self):
+ os.environ["USE"] = ""
+ self.assertEqual(self.verman.filter_depend(self.example_dep_vanilla), self.example_dep_vanilla)
+
+ def test_filter_depend_or(self):
+ # Oh you only realise how ugly things are once you write unittests.
+ os.environ["USE"] = ""
+ rmatch = "|| =virtual/jdk-1.5 =virtual/jdk-1.4 dev-java/ant-core java-virtuals/jaf"
+ self.assertEqual(self.verman.filter_depend(self.example_dep_or), rmatch)
+
+ def test_filter_depend_use(self):
+ os.environ["USE"] = "java"
+ rmatch = ">=virtual/jdk-1.5* dev-java/ant-core java-virtuals/jaf"
+ self.assertEqual(self.verman.filter_depend(self.example_dep_use), rmatch)
+
+ def test_version_satisfies(self):
+ vm = em.get_vm('sun-jdk-1.6')
+ self.assertTrue(self.verman.version_satisfies('>=virtual/jdk-1.5', vm))
+ self.assertFalse(self.verman.version_satisfies('>=virtual/jdk-1.7', vm))
+ self.assertTrue(self.verman.version_satisfies('|| ( =virtual/jdk-1.6 =virtual/jdk-1.5 )', vm))
+
+ self.assertTrue(self.verman.version_satisfies('virtual/jdk:1.6', vm))
+ self.assertFalse(self.verman.version_satisfies('virtual/jdk:1.5', vm))
+ self.assertTrue(self.verman.version_satisfies('>=virtual/jdk-1.5', vm))
+
+ #this will be interesting from the perspective of environment handling.
+
+ os.environ["USE"] = "java6"
+ self.assertTrue(self.verman.version_satisfies('java6? ( =virtual/jdk-1.6 )', vm))
+ os.environ["USE"] = ""
+ self.assertFalse(self.verman.version_satisfies('java6? ( =virtual/jdk-1.6 ) !java6? ( =virtual/jdk-1.5 )', vm))
+
+ #def test_parse_depend(self):
+
+ #def test_get_prefs(self):
+
+ #def test_parse_depend_virtuals(self):
+
+ #def test_get_lowest_atom(self):
+
+ def test_get_lowest(self):
+ target = self.verman.get_lowest(">=virtual/jdk-1.4")
+ self.assertEqual(target, '1.4')
+
+ target = self.verman.get_lowest(self.example_dep_vanilla)
+ self.assertEqual(target, '1.5')
+
+ target = self.verman.get_lowest(self.example_dep_or)
+ self.assertEqual(target, '1.4')
+
+ def test_get_lowest_with_package_dep(self):
+ pass
+ # 1.4 dep but ant-cores5 has a 1.8 target.
+ #self.assertRaises(Exception, self.verman.get_lowest, 'virtual/jdk:1.4 dev-java/test-package:0')
+ # 1.4 but has a 1.5 target package.
+ #self.assertRaises(Exception, self.verman.get_lowest, '>=virtual/jdk-1.4 dev-java/ant-cores5:0')
+
+ #def test_find_vm(self):
+
+ #def test_matches(self):
+
+ def test_version_cmp(self):
+ self.assertEqual(self.verman.version_cmp('1.5.2', '1.5.2'), 0)
+ self.assertTrue(self.verman.version_cmp('1.5', '1.5.1') < 0)
+ self.assertTrue(self.verman.version_cmp('1.5.1', '1.5') > 0)
+
+ #def test_matches(self):
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/Virtual.py b/tests/testsuite/Virtual.py
new file mode 100644
index 0000000..d511d64
--- /dev/null
+++ b/tests/testsuite/Virtual.py
@@ -0,0 +1,40 @@
+import unittest
+import os
+from java_config_2.Virtual import Virtual
+from java_config_2.EnvironmentManager import EnvironmentManager as em
+from java_config_2.Errors import ProviderUnavailableError
+
+def load_virtual(virtual):
+ config = os.path.join(TestVirtual.path, virtual)
+ return Virtual(virtual, em, config)
+
+class TestVirtual(unittest.TestCase):
+ path = os.path.join(os.path.dirname(__file__), "virtual_configs") + "/"
+
+ def setUp(self):
+ self.jaf = load_virtual('jaf')
+ self.jmx = load_virtual('jmx')
+ self.jmx2 = load_virtual('jmx2')
+
+ def test_get_vms(self):
+ self.assertEqual(self.jaf.get_vms(), ['sun-jdk-1.6'])
+
+ def test_load_vms(self):
+ self.assertEqual( self.jmx._vms, ['ibm-jdk-bin-1.5', 'sun-jdk-1.6' , \
+ 'sun-jdk-1.7', 'sun-jre-bin-1.6'] )
+ self.assertEqual( self.jmx2._vms, ['ibm-jdk-bin-1.5', 'sun-jdk-1.6' , \
+ 'sun-jdk-1.7', 'sun-jre-bin-1.6'] )
+
+class TestMultiProviderVirtual(unittest.TestCase):
+
+ def setUp(self):
+ em.set_active_vm(em.get_vm('sun-jdk-1.6'))
+ self.jdbc = load_virtual('jdbc')
+
+ def test_classpath_multiple(self):
+ self.assertEqual( len(self.jdbc.classpath().split(':')), 2)
+
+if __name__ == '__main__':
+ unittest.main()
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/__init__.py b/tests/testsuite/__init__.py
new file mode 100644
index 0000000..d738781
--- /dev/null
+++ b/tests/testsuite/__init__.py
@@ -0,0 +1,13 @@
+__all__ = [ 'VM', 'Virtual', 'Package', 'VersionManager', 'EnvironmentManager' ]
+from . import VM
+from . import Virtual
+from . import Package
+from . import VersionManager
+from . import EnvironmentManager
+from java_config_2.EnvironmentManager import EnvironmentManager as em
+em.vms_path = VM.TestVM.path
+em.pkg_path = Package.TestPackage.path
+em.virtual_path = Virtual.TestVirtual.path
+em.set_active_vm(em.find_vm('ibm-jdk-bin-1.5'))
+
+# vim:set expandtab tabstop=4 shiftwidth=4 softtabstop=4 nowrap:
diff --git a/tests/testsuite/packages/ant-cores/package.env b/tests/testsuite/packages/ant-cores/package.env
new file mode 100644
index 0000000..ebda9b7
--- /dev/null
+++ b/tests/testsuite/packages/ant-cores/package.env
@@ -0,0 +1,10 @@
+DESCRIPTION="Description: ant-cores"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/ant-core/lib/ant.jar:/usr/share/ant-core/lib/ant-bootstrap.jar:/usr/share/ant-core/lib/ant-launcher.jar"
+VM=">=virtual/jdk-1.4"
+TARGET="1.4"
+SOURCE="1.4"
+JAVADOC_PATH="/usr/share/doc/ant-core-1.7.1-r2/html/api"
+JAVA_SOURCES="/usr/share/ant-core/sources//ant-core-src.zip"
+MERGE_VM="sun-jdk-1.7"
diff --git a/tests/testsuite/packages/ant-cores5/package.env b/tests/testsuite/packages/ant-cores5/package.env
new file mode 100644
index 0000000..9b378a9
--- /dev/null
+++ b/tests/testsuite/packages/ant-cores5/package.env
@@ -0,0 +1,10 @@
+DESCRIPTION="Description: ant-cores5"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/ant-core/lib/ant.jar:/usr/share/ant-core/lib/ant-bootstrap.jar:/usr/share/ant-core/lib/ant-launcher.jar"
+VM=">=virtual/jdk-1.5"
+TARGET="1.5"
+SOURCE="1.5"
+JAVADOC_PATH="/usr/share/doc/ant-core-1.7.1-r2/html/api"
+JAVA_SOURCES="/usr/share/ant-core/sources//ant-core-src.zip"
+MERGE_VM="sun-jdk-1.7"
diff --git a/tests/testsuite/packages/commons-logging/package.env b/tests/testsuite/packages/commons-logging/package.env
new file mode 100644
index 0000000..0226096
--- /dev/null
+++ b/tests/testsuite/packages/commons-logging/package.env
@@ -0,0 +1,11 @@
+DESCRIPTION="The Jakarta-Commons Logging package is an ultra-thin bridge between different logging libraries."
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/commons-logging/lib/commons-logging.jar:/usr/share/commons-logging/lib/commons-logging-api.jar:/usr/share/commons-logging/lib/commons-logging-adapters.jar"
+VM=">=virtual/jre-1.4"
+TARGET="1.4"
+SOURCE="1.4"
+JAVADOC_PATH="/usr/share/doc/commons-logging-1.1.1/html/api"
+JAVA_SOURCES="/usr/share/commons-logging/sources//commons-logging-src.zip"
+MERGE_VM="sun-jdk-1.7"
+MERGE_COMPILER="javac"
diff --git a/tests/testsuite/packages/jdbc-mysql/package.env b/tests/testsuite/packages/jdbc-mysql/package.env
new file mode 100644
index 0000000..1ec5d2f
--- /dev/null
+++ b/tests/testsuite/packages/jdbc-mysql/package.env
@@ -0,0 +1,11 @@
+DESCRIPTION="MySQL JDBC driver"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/jdbc-mysql/lib/jdbc-mysql.jar"
+DEPEND="commons-logging.jar@commons-logging:commons-logging-adapters.jar@commons-logging:commons-logging-api.jar@commons-logging:log4j.jar@log4j"
+VM=">=virtual/jre-1.4"
+TARGET="1.4"
+SOURCE="1.4"
+JAVA_SOURCES="/usr/share/jdbc-mysql/sources//jdbc-mysql-src.zip"
+MERGE_VM="sun-jdk-1.5"
+MERGE_COMPILER="javac"
diff --git a/tests/testsuite/packages/jdbc-postgresql/package.env b/tests/testsuite/packages/jdbc-postgresql/package.env
new file mode 100644
index 0000000..2beb488
--- /dev/null
+++ b/tests/testsuite/packages/jdbc-postgresql/package.env
@@ -0,0 +1,11 @@
+DESCRIPTION="JDBC Driver for PostgreSQL"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/jdbc-postgresql/lib/jdbc-postgresql.jar"
+VM=">=virtual/jre-1.6"
+TARGET="1.5"
+SOURCE="1.5"
+JAVADOC_PATH="/usr/share/doc/jdbc-postgresql-8.3_p603-r1/html/api"
+JAVA_SOURCES="/usr/share/jdbc-postgresql/sources//jdbc-postgresql-src.zip"
+MERGE_VM="sun-jdk-1.5"
+MERGE_COMPILER="javac"
diff --git a/tests/testsuite/packages/log4j/package.env b/tests/testsuite/packages/log4j/package.env
new file mode 100644
index 0000000..ed19d32
--- /dev/null
+++ b/tests/testsuite/packages/log4j/package.env
@@ -0,0 +1,12 @@
+DESCRIPTION="A low-overhead robust logging package for Java"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/log4j/lib/log4j.jar"
+DEPEND=""
+VM=">=virtual/jre-1.4"
+TARGET="1.4"
+SOURCE="1.4"
+JAVADOC_PATH="/usr/share/doc/log4j-1.2.15-r2/html/xref-test:/usr/share/doc/log4j-1.2.15-r2/html/xref:/usr/share/doc/log4j-1.2.15-r2/html/api"
+JAVA_SOURCES="/usr/share/log4j/sources//log4j-src.zip"
+MERGE_VM="sun-jdk-1.7"
+MERGE_COMPILER="javac"
diff --git a/tests/testsuite/packages/test-package/package.env b/tests/testsuite/packages/test-package/package.env
new file mode 100644
index 0000000..193c715
--- /dev/null
+++ b/tests/testsuite/packages/test-package/package.env
@@ -0,0 +1,10 @@
+DESCRIPTION="Description: Test Package"
+GENERATION="2"
+SLOT="0"
+CLASSPATH="/usr/share/ant-core/lib/ant.jar:/usr/share/ant-core/lib/ant-bootstrap.jar:/usr/share/ant-core/lib/ant-launcher.jar"
+VM=">=virtual/jdk-1.8"
+TARGET="1.8"
+SOURCE="1.8"
+JAVADOC_PATH="/usr/share/doc/ant-core-1.7.1-r2/html/api"
+JAVA_SOURCES="/usr/share/ant-core/sources//ant-core-src.zip"
+MERGE_VM="sun-jdk-1.8"
diff --git a/tests/testsuite/virtual_configs/jaf b/tests/testsuite/virtual_configs/jaf
new file mode 100644
index 0000000..1c5fc73
--- /dev/null
+++ b/tests/testsuite/virtual_configs/jaf
@@ -0,0 +1,2 @@
+PROVIDERS="sun-jaf gnu-jaf:1"
+VM="sun-jdk-1.6 ibm-jdk-1.6"
diff --git a/tests/testsuite/virtual_configs/jdbc b/tests/testsuite/virtual_configs/jdbc
new file mode 100644
index 0000000..b34347d
--- /dev/null
+++ b/tests/testsuite/virtual_configs/jdbc
@@ -0,0 +1,2 @@
+PROVIDERS="jdbc-postgresql jdbc-oracle-bin jdbc-mysql"
+MULTI_PROVIDER="true"
diff --git a/tests/testsuite/virtual_configs/jmx b/tests/testsuite/virtual_configs/jmx
new file mode 100644
index 0000000..81fdbd7
--- /dev/null
+++ b/tests/testsuite/virtual_configs/jmx
@@ -0,0 +1,2 @@
+PROVIDERS="sun-jmx"
+VM=">=virtual/jre-1.5 >=virtual/jdk-1.5"
diff --git a/tests/testsuite/virtual_configs/jmx2 b/tests/testsuite/virtual_configs/jmx2
new file mode 100644
index 0000000..6d24b79
--- /dev/null
+++ b/tests/testsuite/virtual_configs/jmx2
@@ -0,0 +1,2 @@
+PROVIDERS="sun-jmx"
+VM=">=virtual/jre-1.5"
diff --git a/tests/testsuite/vm_configs/blackdown-jdk-1.4.2 b/tests/testsuite/vm_configs/blackdown-jdk-1.4.2
new file mode 100644
index 0000000..3504f8e
--- /dev/null
+++ b/tests/testsuite/vm_configs/blackdown-jdk-1.4.2
@@ -0,0 +1,20 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/blackdown-jdk/files/blackdown-jdk-1.4.2.env,v 1.1 2006/06/25 16:47:40 nichoj Exp $
+
+VERSION="Blackdown JDK 1.4.2.03"
+JAVA_HOME=/opt/blackdown-jdk-1.4.2.03
+JDK_HOME=/opt/blackdown-jdk-1.4.2.03
+JAVAC=${JAVA_HOME}/bin/javac
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+LDPATH="${JAVA_HOME}/jre/lib/amd64/:${JAVA_HOME}/jre/lib/amd64/native_threads/:${JAVA_HOME}/jre/lib/amd64/classic/:${JAVA_HOME}/jre/lib/amd64/server/"
+MANPATH=/opt/blackdown-jdk-1.4.2.03/man
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="1.4"
+BOOTCLASSPATH="${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/jre/lib/sunrsasign.jar:${JAVA_HOME}/jre/lib/jsse.jar:${JAVA_HOME}/jre/lib/jce.jar:${JAVA_HOME}/jre/lib/charsets.jar"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
+GENERATION="2"
+VMHANDLE="blackdown-jdk-1.4.2"
+PROVIDES="jdbc-stdext"
+BUILD_ONLY="TRUE"
diff --git a/tests/testsuite/vm_configs/ibm-jdk-bin-1.5 b/tests/testsuite/vm_configs/ibm-jdk-bin-1.5
new file mode 100644
index 0000000..20e30fc
--- /dev/null
+++ b/tests/testsuite/vm_configs/ibm-jdk-bin-1.5
@@ -0,0 +1,17 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/ibm-jdk-bin/files/ibm-jdk-bin-1.5.env,v 1.2 2007/12/12 15:10:08 caster Exp $
+
+VERSION="IBM JDK 1.5.0.6"
+JAVA_HOME=/opt/ibm-jdk-bin-1.5.0.6
+JDK_HOME=/opt/ibm-jdk-bin-1.5.0.6
+JAVAC=${JAVA_HOME}/bin/javac
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+LDPATH="/opt/ibm-jdk-bin-1.5.0.6/jre/bin/:/opt/ibm-jdk-bin-1.5.0.6/jre/bin/classic"
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="1.5"
+BOOTCLASSPATH="${JAVA_HOME}/jre/lib/vm.jar:${JAVA_HOME}/jre/lib/core.jar:${JAVA_HOME}/jre/lib/charsets.jar:${JAVA_HOME}/jre/lib/graphics.jar:${JAVA_HOME}/jre/lib/security.jar:${JAVA_HOME}/jre/lib/ibmpkcs.jar:${JAVA_HOME}/jre/lib/ibmorb.jar:${JAVA_HOME}/jre/lib/ibmcfw.jar:${JAVA_HOME}/jre/lib/ibmorbapi.jar:${JAVA_HOME}/jre/lib/ibmjcefw.jar:${JAVA_HOME}/jre/lib/ibmjgssprovider.jar:${JAVA_HOME}/jre/lib/ibmjsseprovider2.jar:${JAVA_HOME}/jre/lib/ibmjaaslm.jar:${JAVA_HOME}/jre/lib/ibmcertpathprovider.jar:${JAVA_HOME}/jre/lib/server.jar:${JAVA_HOME}/jre/lib/xml.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH"
+VMHANDLE="ibm-jdk-bin-1.5"
diff --git a/tests/testsuite/vm_configs/sun-jdk-1.6 b/tests/testsuite/vm_configs/sun-jdk-1.6
new file mode 100644
index 0000000..501935e
--- /dev/null
+++ b/tests/testsuite/vm_configs/sun-jdk-1.6
@@ -0,0 +1,20 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/files/sun-jdk-1.6.env,v 1.3 2007/04/30 11:03:14 betelgeuse Exp $
+
+VERSION="Sun JDK 1.6.0.06"
+JAVA_HOME=/opt/sun-jdk-1.6.0.06
+JDK_HOME=/opt/sun-jdk-1.6.0.06
+JAVAC=${JAVA_HOME}/bin/javac
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+LDPATH="${JAVA_HOME}/jre/lib/i386/:${JAVA_HOME}/jre/lib/i386/native_threads/:${JAVA_HOME}/jre/lib/i386/xawt/:${JAVA_HOME}/jre/lib/i386/server/"
+MANPATH="/opt/sun-jdk-1.6.0.06/man"
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="1.6"
+# Taken from sun.boot.class.path property
+BOOTCLASSPATH="${JAVA_HOME}/jre/lib/resources.jar:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/jre/lib/jsse.jar:${JAVA_HOME}/jre/lib/jce.jar:${JAVA_HOME}/jre/lib/charsets.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
+VMHANDLE="sun-jdk-1.6"
+PROVIDES="jdbc-stdext jdbc-rowset"
diff --git a/tests/testsuite/vm_configs/sun-jdk-1.7 b/tests/testsuite/vm_configs/sun-jdk-1.7
new file mode 100644
index 0000000..71a5d5b
--- /dev/null
+++ b/tests/testsuite/vm_configs/sun-jdk-1.7
@@ -0,0 +1,19 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jdk/files/sun-jdk-1.5.env,v 1.1 2006/06/25 20:06:24 nichoj Exp $
+
+VERSION="Sun JDK 1.7.0.0_alpha24"
+JAVA_HOME=/opt/sun-jdk-1.7.0.0_alpha24
+JDK_HOME=/opt/sun-jdk-1.7.0.0_alpha24
+JAVAC=${JAVA_HOME}/bin/javac
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
+LDPATH="${JAVA_HOME}/jre/lib/i386/:${JAVA_HOME}/jre/lib/i386/native_threads/:${JAVA_HOME}/jre/lib/i386/xawt/:${JAVA_HOME}/jre/lib/i386/server/"
+MANPATH="/opt/sun-jdk-1.7.0.0_alpha24/man"
+PROVIDES_TYPE="JDK JRE"
+PROVIDES_VERSION="1.7"
+BOOTCLASSPATH="${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/jre/lib/i18n.jar:${JAVA_HOME}/jre/lib/sunrsasign.jar:${JAVA_HOME}/jre/lib/jsse.jar:${JAVA_HOME}/jre/lib/jce.jar:${JAVA_HOME}/jre/lib/charsets.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JDK_HOME JAVAC PATH ROOTPATH LDPATH MANPATH"
+VMHANDLE="sun-jdk-1.7"
+PROVIDES="jdbc-stdext jdbc-rowset"
diff --git a/tests/testsuite/vm_configs/sun-jre-bin-1.6 b/tests/testsuite/vm_configs/sun-jre-bin-1.6
new file mode 100644
index 0000000..b9f6fdd
--- /dev/null
+++ b/tests/testsuite/vm_configs/sun-jre-bin-1.6
@@ -0,0 +1,19 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/sun-jre-bin/files/sun-jre-bin-1.6.env,v 1.2 2007/06/02 16:23:14 betelgeuse Exp $
+
+VERSION="Sun JRE 1.6.0.13"
+JAVA_HOME=/opt/sun-jre-bin-1.6.0.13
+JRE_HOME=/opt/sun-jre-bin-1.6.0.13
+PATH="${JAVA_HOME}/bin:${JAVA_HOME}/javaws"
+ROOTPATH="${JAVA_HOME}/bin:${JAVA_HOME}/javaws"
+LDPATH="${JAVA_HOME}/lib/amd64/:${JAVA_HOME}/lib/amd64/native_threads/:${JAVA_HOME}/lib/amd64/xawt/:${JAVA_HOME}/lib/amd64/server/"
+MANPATH="/opt/sun-jre-bin-1.6.0.13/man"
+PROVIDES_TYPE="JRE"
+PROVIDES_VERSION="1.6"
+# Taken from sun.boot.class.path property
+BOOTCLASSPATH="${JAVA_HOME}/jre/lib/resources.jar:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/jre/lib/jsse.jar:${JAVA_HOME}/jre/lib/jce.jar:${JAVA_HOME}/jre/lib/charsets.jar"
+GENERATION="2"
+ENV_VARS="JAVA_HOME JRE_HOME PATH ROOTPATH LDPATH MANPATH"
+VMHANDLE="sun-jre-bin-1.6"
+PROVIDES="jdbc-stdext jdbc-rowset"