def test_clone_job(mock_get_job_type, mock_set_tmp_naming_scheme): fake_chronos_job_config = {"parents": ["foo", "bar"]} mock_get_job_type.return_value = chronos_tools.JobType.Dependent timestamp = datetime.datetime.utcnow().isoformat() chronos_rerun.clone_job(fake_chronos_job_config, timestamp=timestamp) assert mock_get_job_type.call_count == 1 assert mock_set_tmp_naming_scheme.call_count == 1
def test_clone_job( mock_get_job_type, mock_set_tmp_naming_scheme, ): fake_chronos_job_config = {'parents': ['foo', 'bar']} mock_get_job_type.return_value = chronos_tools.JobType.Dependent chronos_rerun.clone_job(fake_chronos_job_config, '2016-03-2016T04:40:31') assert mock_get_job_type.call_count == 1 assert mock_set_tmp_naming_scheme.call_count == 1
def test_clone_job_dependent(mock_remove_parents, mock_set_default_schedule, mock_modify_command_for_date, mock_set_tmp_naming_scheme): fake_chronos_job_config = {'parents': ['foo', 'bar']} chronos_rerun.clone_job(fake_chronos_job_config, '2016-03-2016T04:40:31') assert mock_remove_parents.called_once() assert mock_set_default_schedule.called_once() assert mock_modify_command_for_date.called_once() assert mock_set_tmp_naming_scheme.called_once()
def test_clone_job_dependent(mock_remove_parents, mock_set_default_schedule, mock_modify_command_for_date, mock_set_tmp_naming_scheme): fake_chronos_job_config = { 'parents': ['foo', 'bar'] } chronos_rerun.clone_job(fake_chronos_job_config, '2016-03-2016T04:40:31') assert mock_remove_parents.called_once() assert mock_set_default_schedule.called_once() assert mock_modify_command_for_date.called_once() assert mock_set_tmp_naming_scheme.called_once()
def test_clone_job( mock_get_job_type, mock_set_tmp_naming_scheme, ): fake_chronos_job_config = {'parents': ['foo', 'bar']} mock_get_job_type.return_value = chronos_tools.JobType.Dependent timestamp = datetime.datetime.utcnow().isoformat() chronos_rerun.clone_job(fake_chronos_job_config, '2016-03-2016T04:40:31', timestamp=timestamp) assert mock_get_job_type.call_count == 1 assert mock_set_tmp_naming_scheme.call_count == 1
def test_clone_job_dependent_jobs( mock_get_job_type, mock_modify_command_for_date, ): fake_chronos_job_config = {'name': 'child', 'parents': ['foo', 'bar']} timestamp = '2017-06-12T11:59:45.583867' timestamp_chronos_name = '2017-06-12T115945583867' mock_modify_command_for_date.side_effect = lambda job, date: job mock_get_job_type.return_value = chronos_tools.JobType.Dependent cloned_job = chronos_rerun.clone_job( fake_chronos_job_config, '2016-03-2016T04:40:31', timestamp=timestamp, ) expected_job_config = { 'name': 'tmp-{} {}'.format(timestamp_chronos_name, fake_chronos_job_config['name']), 'parents': [ 'tmp-{}{}{}'.format(timestamp_chronos_name, SPACER, parent) for parent in fake_chronos_job_config['parents'] ], } assert cloned_job == expected_job_config
def test_clone_job_dependent_jobs(mock_get_job_type, mock_modify_command_for_date): fake_chronos_job_config = {"name": "child", "parents": ["foo", "bar"]} timestamp = "2017-06-12T11:59:45.583867" timestamp_chronos_name = "2017-06-12T115945583867" mock_modify_command_for_date.side_effect = lambda job, date, verbose: job mock_get_job_type.return_value = chronos_tools.JobType.Dependent cloned_job = chronos_rerun.clone_job(fake_chronos_job_config, timestamp=timestamp) expected_job_config = { "name": "tmp-{} {}".format(timestamp_chronos_name, fake_chronos_job_config["name"]), "parents": [ f"tmp-{timestamp_chronos_name}{SPACER}{parent}" for parent in fake_chronos_job_config["parents"] ], } assert cloned_job == expected_job_config