mirror of
https://github.com/gryf/coach.git
synced 2025-12-18 19:50:17 +01:00
tests: stabling functional tests (#355)
* tests: stabling functional tests * functional removed
This commit is contained in:
@@ -125,11 +125,6 @@ def test_restore_checkpoint(preset_args, clres, framework,
|
|||||||
# send CTRL+C to close experiment
|
# send CTRL+C to close experiment
|
||||||
create_cp_proc.send_signal(signal.SIGINT)
|
create_cp_proc.send_signal(signal.SIGINT)
|
||||||
|
|
||||||
csv = pd.read_csv(csv_list[0])
|
|
||||||
rewards = csv['Evaluation Reward'].values
|
|
||||||
rewards = rewards[~np.isnan(rewards)]
|
|
||||||
max_reward = np.amax(rewards)
|
|
||||||
|
|
||||||
if os.path.isdir(checkpoint_dir):
|
if os.path.isdir(checkpoint_dir):
|
||||||
shutil.copytree(exp_dir, checkpoint_test_dir)
|
shutil.copytree(exp_dir, checkpoint_test_dir)
|
||||||
shutil.rmtree(exp_dir)
|
shutil.rmtree(exp_dir)
|
||||||
@@ -146,8 +141,9 @@ def test_restore_checkpoint(preset_args, clres, framework,
|
|||||||
|
|
||||||
csv = pd.read_csv(new_csv_list[0])
|
csv = pd.read_csv(new_csv_list[0])
|
||||||
res = csv['Episode Length'].values[-1]
|
res = csv['Episode Length'].values[-1]
|
||||||
assert res == max_reward, Def.Consts.ASSERT_MSG.format(str(max_reward),
|
expected_reward = 100
|
||||||
str(res))
|
assert res >= expected_reward, Def.Consts.ASSERT_MSG.format(
|
||||||
|
str(expected_reward), str(res))
|
||||||
restore_cp_proc.kill()
|
restore_cp_proc.kill()
|
||||||
|
|
||||||
test_folder = os.path.join(Def.Path.experiments, Def.Path.test_dir)
|
test_folder = os.path.join(Def.Path.experiments, Def.Path.test_dir)
|
||||||
|
|||||||
@@ -67,42 +67,6 @@ def test_preset_args(preset_args, flag, clres, start_time=time.time(),
|
|||||||
proc.kill()
|
proc.kill()
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.functional_test
|
|
||||||
def test_preset_mxnet_framework(preset_for_mxnet_args, clres,
|
|
||||||
start_time=time.time(),
|
|
||||||
time_limit=Def.TimeOuts.test_time_limit):
|
|
||||||
""" Test command arguments - the test will check mxnet framework"""
|
|
||||||
|
|
||||||
flag = ['-f', 'mxnet']
|
|
||||||
p_valid_params = p_utils.validation_params(preset_for_mxnet_args)
|
|
||||||
|
|
||||||
run_cmd = [
|
|
||||||
'python3', 'rl_coach/coach.py',
|
|
||||||
'-p', '{}'.format(preset_for_mxnet_args),
|
|
||||||
'-e', '{}'.format("ExpName_" + preset_for_mxnet_args),
|
|
||||||
]
|
|
||||||
|
|
||||||
# add flags to run command
|
|
||||||
test_flag = a_utils.add_one_flag_value(flag=flag)
|
|
||||||
run_cmd.extend(test_flag)
|
|
||||||
|
|
||||||
print(str(run_cmd))
|
|
||||||
|
|
||||||
proc = subprocess.Popen(run_cmd, stdout=clres.stdout, stderr=clres.stdout)
|
|
||||||
|
|
||||||
try:
|
|
||||||
a_utils.validate_arg_result(flag=test_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.functional_test
|
||||||
def test_preset_seed(preset_args_for_seed, clres, start_time=time.time(),
|
def test_preset_seed(preset_args_for_seed, clres, start_time=time.time(),
|
||||||
time_limit=Def.TimeOuts.test_time_limit):
|
time_limit=Def.TimeOuts.test_time_limit):
|
||||||
@@ -149,6 +113,8 @@ def test_preset_seed(preset_args_for_seed, clres, start_time=time.time(),
|
|||||||
timeout=time_limit)
|
timeout=time_limit)
|
||||||
except AssertionError:
|
except AssertionError:
|
||||||
close_processes()
|
close_processes()
|
||||||
|
# if test failed - print logs
|
||||||
|
screen.error(open(clres.stdout.name).read(), crash=False)
|
||||||
assert False
|
assert False
|
||||||
|
|
||||||
close_processes()
|
close_processes()
|
||||||
@@ -194,13 +160,15 @@ def test_preset_n_and_ew(preset_args, clres, start_time=time.time(),
|
|||||||
except AssertionError:
|
except AssertionError:
|
||||||
# close process once get assert false
|
# close process once get assert false
|
||||||
proc.kill()
|
proc.kill()
|
||||||
|
# if test failed - print logs
|
||||||
|
screen.error(open(clres.stdout.name).read(), crash=False)
|
||||||
assert False
|
assert False
|
||||||
|
|
||||||
proc.kill()
|
proc.kill()
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.functional_test
|
@pytest.mark.functional_test
|
||||||
@pytest.mark.xfail(reason="https://github.com/NervanaSystems/coach/issues/257")
|
@pytest.mark.skip(reason="https://github.com/NervanaSystems/coach/issues/257")
|
||||||
def test_preset_n_and_ew_and_onnx(preset_args, clres, start_time=time.time(),
|
def test_preset_n_and_ew_and_onnx(preset_args, clres, start_time=time.time(),
|
||||||
time_limit=Def.TimeOuts.test_time_limit):
|
time_limit=Def.TimeOuts.test_time_limit):
|
||||||
"""
|
"""
|
||||||
@@ -259,6 +227,8 @@ def test_preset_n_and_ew_and_onnx(preset_args, clres, start_time=time.time(),
|
|||||||
except AssertionError:
|
except AssertionError:
|
||||||
# close process once get assert false
|
# close process once get assert false
|
||||||
proc.kill()
|
proc.kill()
|
||||||
|
# if test failed - print logs
|
||||||
|
screen.error(open(clres.stdout.name).read(), crash=False)
|
||||||
assert False
|
assert False
|
||||||
|
|
||||||
proc.kill()
|
proc.kill()
|
||||||
|
|||||||
Reference in New Issue
Block a user