diff --git a/dev/run-tests.py b/dev/run-tests.py index 1a816585187d906719fa899437a2309b0cef46b0..d4d6880491bc837b8f54da08b5d29e13b19cb828 100755 --- a/dev/run-tests.py +++ b/dev/run-tests.py @@ -176,17 +176,14 @@ def determine_java_version(java_exe): # find raw version string, eg 'java version "1.8.0_25"' raw_version_str = next(x for x in raw_output_lines if " version " in x) - version_str = raw_version_str.split()[-1].strip('"') # eg '1.8.0_25' - version, update = version_str.split('_') # eg ['1.8.0', '25'] + match = re.search('(\d+)\.(\d+)\.(\d+)_(\d+)', raw_version_str) - # map over the values and convert them to integers - version_info = [int(x) for x in version.split('.') + [update]] - - return JavaVersion(major=version_info[0], - minor=version_info[1], - patch=version_info[2], - update=version_info[3]) + major = int(match.group(1)) + minor = int(match.group(2)) + patch = int(match.group(3)) + update = int(match.group(4)) + return JavaVersion(major, minor, patch, update) # ------------------------------------------------------------------------------------------------- # Functions for running the other build and test scripts