def test_format_chronos_job_one_mesos_task(): example_job = {} desired_state = '' running_tasks = ['slay the nemean lion'] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert PaastaColors.yellow('Running') in actual
def test_format_chronos_job_two_mesos_tasks(): example_job = {} desired_state = '' running_tasks = ['slay the nemean lion', 'slay the lernaean hydra'] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert 'Critical' in actual
def test_format_chronos_job_zero_mesos_tasks(): example_job = {} desired_state = '' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert PaastaColors.grey('Not running') in actual
def test_format_chronos_job_status_desired_state_passed_through(): example_job = {} desired_state = 'stopped (or started)' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert desired_state in actual
def test_format_chronos_job_name_does_not_exist(): example_job = {} desired_state = '' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert PaastaColors.red('UNKNOWN') in actual
def test_format_chronos_job_name_exists(): example_job = { 'name': 'my_service my_instance gityourmom configyourdad', } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert example_job['name'] in actual
def test_format_chronos_job_command(): example_job = { 'command': 'do the hokey pokey', } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert example_job['command'] in actual
def test_format_chronos_job_status_enabled(): example_job = { 'disabled': False, } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert PaastaColors.green('Scheduled') in actual
def test_format_chronos_job_status_disabled(): example_job = { 'disabled': True, } desired_state = '' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert PaastaColors.red('Disabled') in actual
def test_format_chronos_job_schedule(): example_job = { 'schedule': 'R/2015-04-20T23:20:00+00:00/PT60M', 'epsilon': 'PT42S', } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert example_job['schedule'] in actual assert example_job['epsilon'] in actual
def test_format_chronos_job_status_no_last_run(): example_job = { 'lastError': '', 'lastSuccess': '', } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert PaastaColors.yellow('New') in actual assert '(never)' in actual
def test_format_chronos_job_status_success_and_then_failure(): example_job = { 'lastError': '2015-04-21T23:20:00.420Z', 'lastSuccess': '2015-04-20T23:20:00.420Z', } running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) assert PaastaColors.red('Failed') in actual assert '(2015-04-21' in actual assert 'ago)' in actual
def test_format_chronos_job_status_failure_and_then_success(): example_job = { 'lastError': '2015-04-20T23:20:00.420Z', 'lastSuccess': '2015-04-21T23:20:00.420Z', } desired_state = '' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) assert PaastaColors.green('OK') in actual assert '(2015-04-21' in actual assert 'ago)' in actual
def test_format_chronos_job_mesos_verbose(): example_job = { 'name': 'my_service my_instance gityourmom configyourdad', } running_tasks = ['slay the nemean lion'] verbose = True with mock.patch( 'chronos_serviceinit.status_mesos_tasks_verbose', autospec=True, return_value='status_mesos_tasks_verbose output', ) as mock_status_mesos_tasks_verbose: actual = chronos_serviceinit.format_chronos_job_status(example_job, running_tasks, verbose) mock_status_mesos_tasks_verbose.assert_called_once_with(example_job['name'], chronos_serviceinit.get_short_task_id) assert 'status_mesos_tasks_verbose output' in actual
def test_format_chronos_job_name_exists(): example_job = { 'name': 'my_service my_instance gityourmom configyourdad', } desired_state = '' running_tasks = [] verbose = False actual = chronos_serviceinit.format_chronos_job_status(example_job, desired_state, running_tasks, verbose) # Includes only the 'tag' portion of the name, not the service and instance # (as these are unnecessary and would just add clutter). assert 'my_service' not in actual assert 'my_instance' not in actual assert 'gityourmom' not in actual assert 'configyourdad' in actual