aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGary D. Gregory <ggregory@apache.org>2017-11-27 19:15:00 +0000
committerGary D. Gregory <ggregory@apache.org>2017-11-27 19:15:00 +0000
commitdb6cf117a225ff973a44972c5fba128b1228a99d (patch)
treee8df3ca7dfcd27fc8c770dff459c113e9e66555c /src
parent2a354150a2193ad32311e675d7452c8059be3bef (diff)
downloadapache-commons-bcel-db6cf117a225ff973a44972c5fba128b1228a99d.tar.gz
This test was pretending to test JDK jars but was not. Also now tests JRE 9, 10 EA and JDK 9 and 10 EA.
git-svn-id: https://svn.apache.org/repos/asf/commons/proper/bcel/trunk@1816495 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src')
-rw-r--r--src/test/java/org/apache/bcel/generic/JDKGenericDumpTestCase.java27
1 files changed, 16 insertions, 11 deletions
diff --git a/src/test/java/org/apache/bcel/generic/JDKGenericDumpTestCase.java b/src/test/java/org/apache/bcel/generic/JDKGenericDumpTestCase.java
index 253a14d2..580216ae 100644
--- a/src/test/java/org/apache/bcel/generic/JDKGenericDumpTestCase.java
+++ b/src/test/java/org/apache/bcel/generic/JDKGenericDumpTestCase.java
@@ -45,17 +45,20 @@ import org.junit.runners.Parameterized.Parameters;
import com.sun.jna.platform.win32.Advapi32Util;
/**
- * Test that the generic dump() methods work on the JDK classes Reads each class
- * into an instruction list and then dumps the instructions. The output bytes
- * should be the same as the input.
+ * Test that the generic dump() methods work on the JDK classes Reads each class into an instruction list and then dumps
+ * the instructions. The output bytes should be the same as the input.
*/
@RunWith(Parameterized.class)
public class JDKGenericDumpTestCase {
private static final String KEY_JDK = "SOFTWARE\\JavaSoft\\Java Development Kit";
+ private static final String KEY_JDK_9 = "SOFTWARE\\JavaSoft\\JDK";
+
private static final String KEY_JRE = "SOFTWARE\\JavaSoft\\Java Runtime Environment";
+ private static final String KEY_JRE_9 = "SOFTWARE\\JavaSoft\\JRE";
+
@Parameters(name = "{0}")
public static Collection<String> data() {
return findJavaHomes();
@@ -72,19 +75,21 @@ public class JDKGenericDumpTestCase {
private static Set<String> findJavaHomesOnWindows() {
Set<String> javaHomes = new HashSet<>();
- final String[] jreKeys = Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JRE);
- javaHomes = findJavaHomesOnWindows(jreKeys);
- final String[] jdkKeys = Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JDK);
- javaHomes.addAll(findJavaHomesOnWindows(jdkKeys));
+ javaHomes.addAll(findJavaHomesOnWindows(KEY_JRE, Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JRE)));
+ javaHomes
+ .addAll(findJavaHomesOnWindows(KEY_JRE_9, Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JRE_9)));
+ javaHomes.addAll(findJavaHomesOnWindows(KEY_JDK, Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JDK)));
+ javaHomes
+ .addAll(findJavaHomesOnWindows(KEY_JDK_9, Advapi32Util.registryGetKeys(HKEY_LOCAL_MACHINE, KEY_JDK_9)));
return javaHomes;
}
- private static Set<String> findJavaHomesOnWindows(final String[] keys) {
+ private static Set<String> findJavaHomesOnWindows(String keyJavaHome, final String[] keys) {
final Set<String> javaHomes = new HashSet<>(keys.length);
for (final String key : keys) {
- if (Advapi32Util.registryKeyExists(HKEY_LOCAL_MACHINE, KEY_JRE + "\\" + key)) {
- final String javaHome = Advapi32Util.registryGetStringValue(HKEY_LOCAL_MACHINE, KEY_JRE + "\\" + key,
- "JavaHome");
+ if (Advapi32Util.registryKeyExists(HKEY_LOCAL_MACHINE, keyJavaHome + "\\" + key)) {
+ final String javaHome = Advapi32Util.registryGetStringValue(HKEY_LOCAL_MACHINE,
+ keyJavaHome + "\\" + key, "JavaHome");
if (StringUtils.isNoneBlank(javaHome)) {
if (new File(javaHome).exists()) {
javaHomes.add(javaHome);