[arch-commits] Commit in java-common/trunk (3 files)

Guillaume Alaux guillaume at archlinux.org
Fri Sep 22 20:51:11 UTC 2017


    Date: Friday, September 22, 2017 @ 20:51:10
  Author: guillaume
Revision: 306124

Release 3-1

Modified:
  java-common/trunk/PKGBUILD
  java-common/trunk/bin_archlinux-java
  java-common/trunk/test_archlinux-java

---------------------+
 PKGBUILD            |   16 +-
 bin_archlinux-java  |   20 ++-
 test_archlinux-java |  295 ++++++++++++++++++++++++++++++++++++++++----------
 3 files changed, 258 insertions(+), 73 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-09-22 20:27:36 UTC (rev 306123)
+++ PKGBUILD	2017-09-22 20:51:10 UTC (rev 306124)
@@ -1,8 +1,8 @@
 # Maintainer: Guillaume ALAUX <guillaume at archlinux.org>
 pkgname=('java-runtime-common' 'java-environment-common')
 pkgbase=java-common
-pkgver=2
-pkgrel=2
+pkgver=3
+pkgrel=1
 arch=('any')
 url='www.archlinux.org'
 license=('GPL')
@@ -16,8 +16,8 @@
 
 sha256sums=('9d25638cafc2fabd1ba6f2f26aa01233eccf3d31db003d956b571f0ab655dd23'
             '519e9881a2a9f4fc3d581ea0ef0da594eedbfdfcf734f9fdc0bb595e8ac77e4c'
-            '272296ec7ca673b4f9f59fb70565328b6daef682c29cd964c988c018090c3fc2'
-            '565aad3e35b7435d5050cba2363c39affa739c9af8b9626aff0678850fa64025'
+            '5101f9d3d42cd545843a537826451c1b2e0bf2b16aba4e36ac797d9ace16dc63'
+            '721b225f6eb420f7b173ba2db8c65688f50ffd5dad0960ecce4cfefdb57b26a2'
             '6beca93d20b72b46083c8271c4cf1da21b45f250a92b401c2565c65e1d75138f')
 
 check() {
@@ -48,7 +48,7 @@
   # Official list of binaries that Java headless runtime packages MUST provide
   # This list is based on Arch Linux' default Java implementation: "OpenJDK 7 Icedtea"
   for b in \
-    java keytool orbd pack200 policytool rmid rmiregistry servertool tnameserv unpack200;
+    java keytool orbd pack200 rmid rmiregistry servertool tnameserv unpack200;
   do
     ln -s /usr/lib/jvm/default-runtime/bin/${b} "${pkgdir}/usr/bin/${b}"
   done
@@ -63,9 +63,9 @@
   # Official list of supplementary binaries that Java environment packages MUST provide
   # This list is based on Arch Linux' default Java implementation: "OpenJDK 7 Icedtea"
   for b in \
-    appletviewer extcheck idlj jar jarsigner javac javadoc javah javap jcmd \
-    jconsole jdb jhat jinfo jmap jps jrunscript jsadebugd jstack jstat \
-    jstatd native2ascii rmic schemagen serialver wsgen wsimport xjc;
+    jar jarsigner javac javadoc javah javap jcmd \
+    jconsole jdb jinfo jmap jps jstack jstat \
+    jstatd rmic schemagen serialver wsgen wsimport xjc;
   do
     ln -s /usr/lib/jvm/default/bin/${b} "${pkgdir}/usr/bin/${b}"
   done

Modified: bin_archlinux-java
===================================================================
--- bin_archlinux-java	2017-09-22 20:27:36 UTC (rev 306123)
+++ bin_archlinux-java	2017-09-22 20:51:10 UTC (rev 306124)
@@ -44,7 +44,7 @@
 get_installed_javas() {
   if [ -d ${JVM_DIR} ]; then
     for dir in $(find ${JVM_DIR} -mindepth 1 -maxdepth 1 -type d | sort); do
-      if [ -x ${dir}/bin/javac ]; then
+      if [ -x ${dir}/bin/java ]; then
         javas+=(${dir/${JVM_DIR}\/})
       else
         if [ -x ${dir}/jre/bin/java ]; then
@@ -68,10 +68,10 @@
   ln -sf ${new_default} ${DEFAULT_PATH}
 
   unlink ${DEFAULT_PATH_JRE} 2>/dev/null
-  if [[ ${new_default} == */jre ]]; then
+  if [[ -d ${new_default}/jre ]]; then
+    ln -sf ${new_default}/jre ${DEFAULT_PATH_JRE}
+  else
     ln -sf ${new_default} ${DEFAULT_PATH_JRE}
-  else
-    ln -sf ${new_default}/jre ${DEFAULT_PATH_JRE}
   fi
 }
 
@@ -90,6 +90,7 @@
     default_java=$(get_default_java)
     echo 'Available Java environments:'
     for java in ${installed_java[@]}; do
+      # We discoverd this Java env but its JRE is actually set as default
       if [ "${java}/jre" = "${default_java}" ]; then
         echo -e "  ${java} (${java}/jre default)"
       elif [ ${java} = "${default_java}" ]; then
@@ -135,6 +136,7 @@
 do_fix() {
   default=$(get_default_java)
   if is_java_valid ${default}; then
+    # If its parent is also a valid Java environment
     if is_java_valid $(dirname ${default}); then
       unset_default_link
       set_default_link_to $(dirname ${default})
@@ -142,9 +144,13 @@
   else
     prev=$(readlink ${DEFAULT_PATH})
     unset_default_link
-    prev_fix=("${prev/\/jre}" "${prev}/jre")
-    openjdk7=('java-7-openjdk' 'java-7-openjdk/jre')
-    to_check=(${prev_fix[@]} ${openjdk7[@]} $(get_installed_javas))
+    potential_fixes=("${prev/\/jre}" "${prev}/jre")
+    openjdk8=('java-8-openjdk' 'java-8-openjdk/jre')
+    # List of environments to check by order of preference:
+    # - first potential fixes of user choices,
+    # - then OpenJDK8 as it is considered a default in Arch Linux
+    # - finally, any installed environment
+    to_check=(${potential_fixes[@]} ${openjdk8[@]} $(get_installed_javas))
     for java in ${to_check[@]}; do
       if ! is_java_valid $(get_default_java) && is_java_valid ${java}; then
         set_default_link_to ${java}

Modified: test_archlinux-java
===================================================================
--- test_archlinux-java	2017-09-22 20:27:36 UTC (rev 306123)
+++ test_archlinux-java	2017-09-22 20:51:10 UTC (rev 306124)
@@ -37,24 +37,34 @@
 }
 
 # $1: path of Java environment to create
-create_valid_jre_env() {
-  mkdir -p ${JVM_DIR}/$1/bin
-  for binary in java keytool orbd; do
-    touch    ${JVM_DIR}/$1/bin/${binary}
-    chmod +x ${JVM_DIR}/$1/bin/${binary}
-  done
+create_raw_java_env() {
+  java_env_name=$1
+  bin_name=$2
+  mkdir -p ${JVM_DIR}/${java_env_name}/bin
+  touch    ${JVM_DIR}/${java_env_name}/bin/$bin_name
+  chmod +x ${JVM_DIR}/${java_env_name}/bin/$bin_name
 }
 
+create_valid_jre8_env() {
+  create_raw_java_env "$1/jre" "java"
+}
+
 # $1: path of Java environment to create
-create_valid_jdk_env() {
-  create_valid_jre_env "$1"
-  for binary in javac javah jhat; do
-    touch    ${JVM_DIR}/$1/bin/${binary}
-    chmod +x ${JVM_DIR}/$1/bin/${binary}
-  done
-  create_valid_jre_env "$1/jre"
+create_valid_jre8_jdk8_env() {
+  create_raw_java_env "$1" "java"
+  create_raw_java_env "$1" "javac"
+  create_valid_jre8_env "$1"
 }
 
+create_valid_jre9_env() {
+  create_raw_java_env "$1" "java"
+}
+
+create_valid_jre9_jdk9_env() {
+  create_raw_java_env "$1" "java"
+  create_raw_java_env "$1" "javac"
+}
+
 set_default_for_test() {
   ln -s $1 ${DEFAULT_PATH}
   if [ -d ${DEFAULT_PATH}/jre ]; then
@@ -79,35 +89,89 @@
 
 # do_status
 
-test_do_status() {
+test_do_status_with_jre8_default() {
   JAVA_NAME_1="a$(get_rand_str)"
   JAVA_NAME_2="b$(get_rand_str)"
-  create_valid_jre_env "${JAVA_NAME_1}/jre"
+  JAVA_NAME_3="c$(get_rand_str)"
+  create_valid_jre8_env "${JAVA_NAME_1}"
   set_default_for_test "${JAVA_NAME_1}/jre"
-  create_valid_jdk_env "${JAVA_NAME_2}"
-  expected=$(echo -e "Available Java environments:\n  ${JAVA_NAME_1}/jre (default)\n  ${JAVA_NAME_2}")
+  create_valid_jre8_jdk8_env "${JAVA_NAME_2}"
+  create_valid_jre9_env "${JAVA_NAME_3}"
+  mess="Available Java environments:"
+  mess+="\n  ${JAVA_NAME_1}/jre (default)"
+  mess+="\n  ${JAVA_NAME_2}"
+  mess+="\n  ${JAVA_NAME_3}"
+  expected=$(echo -e "${mess}")
   assertEquals 'Wrong status output' "${expected}" "$(do_status)"
 }
 
+test_do_status_with_jre9_default() {
+  JAVA_NAME_1="a$(get_rand_str)"
+  JAVA_NAME_2="b$(get_rand_str)"
+  JAVA_NAME_3="c$(get_rand_str)"
+  create_valid_jre8_env "${JAVA_NAME_1}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME_2}"
+  create_valid_jre9_env "${JAVA_NAME_3}"
+  set_default_for_test "${JAVA_NAME_3}"
+  mess="Available Java environments:"
+  mess+="\n  ${JAVA_NAME_1}/jre"
+  mess+="\n  ${JAVA_NAME_2}"
+  mess+="\n  ${JAVA_NAME_3} (default)"
+  expected=$(echo -e "${mess}")
+  assertEquals 'Wrong status output' "${expected}" "$(do_status)"
+}
+
+test_do_status_with_jdk9_default() {
+  JAVA_NAME_1="a$(get_rand_str)"
+  JAVA_NAME_2="b$(get_rand_str)"
+  JAVA_NAME_3="c$(get_rand_str)"
+  create_valid_jre8_env "${JAVA_NAME_1}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME_2}"
+  create_valid_jre9_jdk9_env "${JAVA_NAME_3}"
+  set_default_for_test "${JAVA_NAME_3}"
+  mess="Available Java environments:"
+  mess+="\n  ${JAVA_NAME_1}/jre"
+  mess+="\n  ${JAVA_NAME_2}"
+  mess+="\n  ${JAVA_NAME_3} (default)"
+  expected=$(echo -e "${mess}")
+  assertEquals 'Wrong status output' "${expected}" "$(do_status)"
+}
+
 test_do_status_no_default() {
   JAVA_NAME_1="a$(get_rand_str)"
   JAVA_NAME_2="b$(get_rand_str)"
-  create_valid_jre_env "${JAVA_NAME_1}/jre"
-  create_valid_jdk_env "${JAVA_NAME_2}"
+  JAVA_NAME_3="c$(get_rand_str)"
+  JAVA_NAME_4="d$(get_rand_str)"
+  create_valid_jre8_env "${JAVA_NAME_1}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME_2}"
+  create_valid_jre9_env "${JAVA_NAME_3}"
+  create_valid_jre9_jdk9_env "${JAVA_NAME_4}"
   mess="Available Java environments:"
   mess+="\n  ${JAVA_NAME_1}/jre"
   mess+="\n  ${JAVA_NAME_2}"
+  mess+="\n  ${JAVA_NAME_3}"
+  mess+="\n  ${JAVA_NAME_4}"
   mess+="\nNo Java environment set as default"
   expected=$(echo -e "${mess}")
   assertEquals 'Wrong status output' "${expected}" "$(do_status)"
 }
 
+test_do_status_no_duplicate_entry_jre9_jdk9() {
+  JAVA_NAME_1="a$(get_rand_str)"
+  create_valid_jre9_jdk9_env "${JAVA_NAME_1}"
+  mess="Available Java environments:"
+  mess+="\n  ${JAVA_NAME_1}"
+  mess+="\nNo Java environment set as default"
+  expected=$(echo -e "${mess}")
+  assertEquals 'Wrong status output' "${expected}" "$(do_status)"
+}
+
 test_do_status_no_javas() {
   assertEquals 'Wrong status output' 'No compatible Java environment installed' "$(do_status)"
 }
 
 test_do_status_jre_but_jdk_exists() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}/jre"
   mess="Available Java environments:"
   mess+="\n  ${JAVA_NAME} (${JAVA_NAME}/jre default)"
@@ -117,8 +181,8 @@
 
 # do_get
 
-test_do_get_with_default() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_get_with_jdk8_default() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}"
   assertEquals 'Wrong result' "${JAVA_NAME}" "$(do_get)"
   assertDefaultSetTo "${JAVA_NAME}"
@@ -125,19 +189,27 @@
 }
 
 test_do_get_without_default() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "$(get_rand_str)"
+  create_valid_jre9_jdk9_env "$(get_rand_str)"
   assertNull 'Wrong result' "$(do_get)"
 }
 
-test_do_get_without_default() {
+test_do_get_with_initial_null() {
   set_default_for_test "/dev/null"
   assertNull 'Wrong result' "$(do_get)"
 }
 
+test_do_get_with_jdk9_default() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
+  assertEquals 'Wrong result' "${JAVA_NAME}" "$(do_get)"
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
 # do_set
 
 test_do_set_new_invalid() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}"
   output=$(do_set "INVALID")
   assertEquals 'Wrong status returned' 1 $?
@@ -146,7 +218,7 @@
 }
 
 test_do_set_current_invalid() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "INVALID"
   $(do_set "${JAVA_NAME}")
   assertEquals 'Wrong status returned' 0 $?
@@ -153,25 +225,59 @@
   assertDefaultSetTo "${JAVA_NAME}"
 }
 
-test_do_set_with_default_already_set() {
-  create_valid_jre_env "${JAVA_NAME}/jre"
+test_do_set_jre8_with_default_already_set_to_jre8() {
+  create_valid_jre8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}/jre"
   JAVA_NAME_2="$(get_rand_str)"
-  create_valid_jre_env "${JAVA_NAME_2}/jre"
+  create_valid_jre8_env "${JAVA_NAME_2}"
   $(do_set "${JAVA_NAME_2}/jre")
   assertEquals 'Wrong status returned' 0 $?
   assertDefaultSetTo "${JAVA_NAME_2}/jre"
 }
 
-test_do_set_no_default() {
-  create_valid_jre_env "${JAVA_NAME}/jre"
+test_do_set_jre9_with_default_already_set_to_jre8() {
+  create_valid_jre8_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}/jre"
+  JAVA_NAME_2="$(get_rand_str)"
+  create_valid_jre9_env "${JAVA_NAME_2}"
+  $(do_set "${JAVA_NAME_2}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA_NAME_2}"
+}
+
+test_do_set_jdk9_with_default_already_set_to_jdk8() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
+  JAVA_NAME_2="$(get_rand_str)"
+  create_valid_jre9_jdk9_env "${JAVA_NAME_2}"
+  $(do_set "${JAVA_NAME_2}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA_NAME_2}"
+}
+
+test_do_set_jre8_no_previous_default() {
+  create_valid_jre8_env "${JAVA_NAME}"
   $(do_set "${JAVA_NAME}/jre")
   assertEquals 'Wrong status returned' 0 $?
   assertDefaultSetTo "${JAVA_NAME}/jre"
 }
 
-test_do_set_exists_jdk() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_set_jre9_no_previous_default() {
+  create_valid_jre9_env "${JAVA_NAME}"
+  $(do_set "${JAVA_NAME}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
+test_do_set_jdk9_no_previous_default() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  $(do_set "${JAVA_NAME}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
+test_do_set_jre8_while_jdk8_also_exists() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   output=$(do_set "${JAVA_NAME}/jre")
   assertEquals 'Wrong status returned' 0 $?
   assertDefaultSetTo "${JAVA_NAME}/jre"
@@ -181,8 +287,8 @@
   #assertEquals 'Wrong message' "${expected}" "${output}"
 }
 
-test_do_set_cleanup_old_java_default() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_set_jdk8_cleanup_old_jre8_default() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}"
   output=$(do_set "${JAVA_NAME}/jre")
   assertEquals 'Wrong status returned' 0 $?
@@ -189,8 +295,19 @@
   assertDefaultSetTo "${JAVA_NAME}/jre"
 }
 
-test_do_set_devnull() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_set_jdk9_cleanup_old_jdk8_default() {
+  JAVA8_NAME=$(get_rand_str)
+  create_valid_jre8_jdk8_env "${JAVA8_NAME}"
+  set_default_for_test "${JAVA8_NAME}"
+  JAVA9_NAME=$(get_rand_str)
+  create_valid_jre9_jdk9_env "${JAVA9_NAME}"
+  output=$(do_set "${JAVA9_NAME}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA9_NAME}"
+}
+
+test_do_set_jdk8_devnull() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "/dev/null"
   output=$(do_set "${JAVA_NAME}/jre")
   assertEquals 'Wrong status returned' 0 $?
@@ -197,10 +314,18 @@
   assertDefaultSetTo "${JAVA_NAME}/jre"
 }
 
+test_do_set_jdk9_devnull() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  set_default_for_test "/dev/null"
+  output=$(do_set "${JAVA_NAME}")
+  assertEquals 'Wrong status returned' 0 $?
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
 # do_unset
 
-test_do_unset_default_not_target() {
-  create_valid_jre_env "${JAVA_NAME}/jre"
+test_do_unset_jre8() {
+  create_valid_jre8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}/jre"
   do_unset
   assertDefaultNotSet
@@ -207,7 +332,7 @@
 }
 
 test_do_unset_no_default_link() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}"
   unlink ${DEFAULT_PATH}
   do_unset
@@ -220,48 +345,101 @@
   assertDefaultNotSet
 }
 
+test_do_unset_jre9() {
+  create_valid_jre9_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
+  do_unset
+  assertDefaultNotSet
+}
+
+test_do_unset_jdk9() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
+  do_unset
+  assertDefaultNotSet
+}
+
 # do_fix
 
-test_do_fix_default_valid() {
-  create_valid_jre_env "${JAVA_NAME}/jre"
+test_do_fix_default_valid_jre8() {
+  create_valid_jre8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}/jre"
   do_fix
   assertDefaultSetTo "${JAVA_NAME}/jre"
 }
 
-test_do_fix_no_default() {
-  create_valid_jre_env "${JAVA_NAME}/jre"
+test_do_fix_default_valid_jre9() {
+  create_valid_jre9_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
   do_fix
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
+test_do_fix_default_valid_jdk9() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  set_default_for_test "${JAVA_NAME}"
+  do_fix
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
+test_do_fix_no_default_jre8() {
+  create_valid_jre8_env "${JAVA_NAME}"
+  do_fix
   assertDefaultSetTo "${JAVA_NAME}/jre"
 }
 
+test_do_fix_no_default_jre9() {
+  create_valid_jre9_env "${JAVA_NAME}"
+  do_fix
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
+test_do_fix_no_default_jdk9() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  do_fix
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
 test_do_fix_default_invalid_openjdk7_jdk_installed() {
-  create_valid_jdk_env "java-7-openjdk"
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "java-8-openjdk"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   do_fix
-  assertDefaultSetTo "java-7-openjdk"
+  assertDefaultSetTo "java-8-openjdk"
 }
 
-test_do_fix_default_invalid_openjdk7_jre_installed() {
-  create_valid_jdk_env "${JAVA_NAME}"
-  create_valid_jre_env "java-7-openjdk/jre"
+test_do_fix_jdk8_not_default_but_openjdk7_jre_installed() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
+  create_valid_jre8_env "java-8-openjdk"
   do_fix
-  assertDefaultSetTo "java-7-openjdk/jre"
+  assertDefaultSetTo "java-8-openjdk/jre"
 }
 
-test_do_fix_default_invalid_random_java_installed() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_fix_jdk9_not_default_but_openjdk7_jre_installed() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  create_valid_jre8_env "java-8-openjdk"
   do_fix
+  assertDefaultSetTo "java-8-openjdk/jre"
+}
+
+test_do_fix_default_invalid_random_java8_installed() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
+  do_fix
   assertDefaultSetTo "${JAVA_NAME}"
 }
 
+test_do_fix_default_invalid_random_java9_installed() {
+  create_valid_jre9_jdk9_env "${JAVA_NAME}"
+  do_fix
+  assertDefaultSetTo "${JAVA_NAME}"
+}
+
 test_do_fix_default_invalid_no_java_installed() {
   assertEquals 'Wrong message' "No valid Java environment found" "$(do_fix)"
   assertDefaultNotSet
 }
 
-test_do_fix_jre_but_jdk_exists() {
-  create_valid_jdk_env "${JAVA_NAME}"
+test_do_fix_jre8_but_jdk8_exists() {
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "${JAVA_NAME}/jre"
   do_fix
   assertDefaultSetTo "${JAVA_NAME}"
@@ -268,8 +446,9 @@
 }
 
 test_do_fix_jdk_but_jre_exists() {
-  create_valid_jdk_env "java-7-openjdk"
-  create_valid_jre_env "${JAVA_NAME}/jre"
+  create_valid_jre8_jdk8_env "java-7-openjdk"
+  create_valid_jre8_env "${JAVA_NAME}"
+  # Only JRE is installed but setting JDK as default
   set_default_for_test "${JAVA_NAME}"
   do_fix
   assertDefaultSetTo "${JAVA_NAME}/jre"
@@ -276,7 +455,7 @@
 }
 
 test_do_fix_devnull() {
-  create_valid_jdk_env "${JAVA_NAME}"
+  create_valid_jre8_jdk8_env "${JAVA_NAME}"
   set_default_for_test "/dev/null"
   do_fix
   assertDefaultSetTo "${JAVA_NAME}"



More information about the arch-commits mailing list