mirror of
https://github.com/gryf/coach.git
synced 2026-03-05 00:15:50 +01:00
tests: added new checkpoint and functional tests (#265)
* added new tests - test_preset_n_and_ew - test_preset_n_and_ew_and_onnx * code utils improvements (all utils) * improve checkpoint_test * new functionality for functional_test markers and presets lists * removed special environment container * add xfail to certain tests
This commit is contained in:
@@ -143,3 +143,113 @@ def test_preset_seed(preset_args_for_seed, clres, start_time=time.time(),
|
||||
assert False
|
||||
|
||||
close_processes()
|
||||
|
||||
|
||||
@pytest.mark.functional_test
|
||||
def test_preset_n_and_ew(preset_args, clres, start_time=time.time(),
|
||||
time_limit=Def.TimeOuts.test_time_limit):
|
||||
"""
|
||||
Test command arguments - check evaluation worker with number of workers
|
||||
"""
|
||||
|
||||
ew_flag = ['-ew']
|
||||
n_flag = ['-n', Def.Flags.enw]
|
||||
p_valid_params = p_utils.validation_params(preset_args)
|
||||
|
||||
run_cmd = [
|
||||
'python3', 'rl_coach/coach.py',
|
||||
'-p', '{}'.format(preset_args),
|
||||
'-e', '{}'.format("ExpName_" + preset_args),
|
||||
]
|
||||
|
||||
# add flags to run command
|
||||
test_ew_flag = a_utils.add_one_flag_value(flag=ew_flag)
|
||||
test_n_flag = a_utils.add_one_flag_value(flag=n_flag)
|
||||
run_cmd.extend(test_ew_flag)
|
||||
run_cmd.extend(test_n_flag)
|
||||
|
||||
print(str(run_cmd))
|
||||
|
||||
proc = subprocess.Popen(run_cmd, stdout=clres.stdout, stderr=clres.stdout)
|
||||
|
||||
try:
|
||||
a_utils.validate_arg_result(flag=test_ew_flag,
|
||||
p_valid_params=p_valid_params, clres=clres,
|
||||
process=proc, start_time=start_time,
|
||||
timeout=time_limit)
|
||||
|
||||
a_utils.validate_arg_result(flag=test_n_flag,
|
||||
p_valid_params=p_valid_params, clres=clres,
|
||||
process=proc, start_time=start_time,
|
||||
timeout=time_limit)
|
||||
except AssertionError:
|
||||
# close process once get assert false
|
||||
proc.kill()
|
||||
assert False
|
||||
|
||||
proc.kill()
|
||||
|
||||
|
||||
@pytest.mark.functional_test
|
||||
@pytest.mark.xfail(reason="https://github.com/NervanaSystems/coach/issues/257")
|
||||
def test_preset_n_and_ew_and_onnx(preset_args, clres, start_time=time.time(),
|
||||
time_limit=Def.TimeOuts.test_time_limit):
|
||||
"""
|
||||
Test command arguments - check evaluation worker, number of workers and
|
||||
onnx.
|
||||
"""
|
||||
|
||||
ew_flag = ['-ew']
|
||||
n_flag = ['-n', Def.Flags.enw]
|
||||
onnx_flag = ['-onnx']
|
||||
s_flag = ['-s', Def.Flags.css]
|
||||
p_valid_params = p_utils.validation_params(preset_args)
|
||||
|
||||
run_cmd = [
|
||||
'python3', 'rl_coach/coach.py',
|
||||
'-p', '{}'.format(preset_args),
|
||||
'-e', '{}'.format("ExpName_" + preset_args),
|
||||
]
|
||||
|
||||
# add flags to run command
|
||||
test_ew_flag = a_utils.add_one_flag_value(flag=ew_flag)
|
||||
test_n_flag = a_utils.add_one_flag_value(flag=n_flag)
|
||||
test_onnx_flag = a_utils.add_one_flag_value(flag=onnx_flag)
|
||||
test_s_flag = a_utils.add_one_flag_value(flag=s_flag)
|
||||
|
||||
run_cmd.extend(test_ew_flag)
|
||||
run_cmd.extend(test_n_flag)
|
||||
run_cmd.extend(test_onnx_flag)
|
||||
run_cmd.extend(test_s_flag)
|
||||
|
||||
print(str(run_cmd))
|
||||
|
||||
proc = subprocess.Popen(run_cmd, stdout=clres.stdout, stderr=clres.stdout)
|
||||
|
||||
try:
|
||||
# Check csv files has been created
|
||||
a_utils.validate_arg_result(flag=test_ew_flag,
|
||||
p_valid_params=p_valid_params, clres=clres,
|
||||
process=proc, start_time=start_time,
|
||||
timeout=time_limit)
|
||||
|
||||
# Check csv files created same as the number of the workers
|
||||
a_utils.validate_arg_result(flag=test_n_flag,
|
||||
p_valid_params=p_valid_params, clres=clres,
|
||||
process=proc, start_time=start_time,
|
||||
timeout=time_limit)
|
||||
|
||||
# Check checkpoint files
|
||||
a_utils.validate_arg_result(flag=test_s_flag,
|
||||
p_valid_params=p_valid_params, clres=clres,
|
||||
process=proc, start_time=start_time,
|
||||
timeout=time_limit)
|
||||
|
||||
# TODO: add onnx check; issue found #257
|
||||
|
||||
except AssertionError:
|
||||
# close process once get assert false
|
||||
proc.kill()
|
||||
assert False
|
||||
|
||||
proc.kill()
|
||||
|
||||
Reference in New Issue
Block a user