Tests: features and options checks improved.

Now version output evaluates only once.
OpenSSL checks more carefully.
This commit is contained in:
Andrei Zeliankou
2022-11-15 00:39:21 +00:00
parent 40d75c94a0
commit 0d3b31e671
3 changed files with 13 additions and 16 deletions

View File

@@ -176,6 +176,9 @@ def pytest_sessionstart(session):
option.available = {'modules': {}, 'features': {}}
unit = unit_run()
output_version = subprocess.check_output(
[unit['unitd'], '--version'], stderr=subprocess.STDOUT
).decode()
# read unit.log
@@ -202,10 +205,10 @@ def pytest_sessionstart(session):
# discover modules from check
option.available['modules']['openssl'] = check_openssl(unit['unitd'])
option.available['modules']['go'] = check_go()
option.available['modules']['node'] = check_node(option.current_dir)
option.available['modules']['regex'] = check_regex(unit['unitd'])
option.available['modules']['openssl'] = check_openssl(output_version)
option.available['modules']['regex'] = check_regex(output_version)
# remove None values

View File

@@ -1,13 +1,8 @@
import re
import subprocess
def check_regex(unitd):
output = subprocess.check_output(
[unitd, '--version'], stderr=subprocess.STDOUT
)
if re.search('--no-regex', output.decode()):
def check_regex(output_version):
if re.search('--no-regex', output_version):
return False
return True

View File

@@ -2,12 +2,11 @@ import re
import subprocess
def check_openssl(unitd):
def check_openssl(output_version):
try:
subprocess.check_output(['which', 'openssl'])
except subprocess.CalledProcessError:
return None
output = subprocess.check_output(
[unitd, '--version'], stderr=subprocess.STDOUT
)
if re.search('--openssl', output.decode()):
if re.search('--openssl', output_version):
return True