Esempio n. 1
0
def test_status_chronos_jobs_get_running_tasks():
    jobs = [{"name": "my_service my_instance gityourmom configyourdad"}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with mock.patch(
            "paasta_tools.chronos_serviceinit.format_chronos_job_status",
            autospec=True,
            return_value="job_status_output",
    ), mock.patch(
            "paasta_tools.chronos_serviceinit.get_cached_list_of_running_tasks_from_frameworks",
            autospec=True,
            return_value=[],
    ) as mock_get_running_tasks, mock.patch(
            "paasta_tools.chronos_serviceinit.chronos_tools.lookup_chronos_jobs",
            autospec=True,
            return_value=jobs,
    ), mock.patch(
            "paasta_tools.chronos_serviceinit.chronos_tools.load_chronos_job_config",
            autospec=True,
            return_value=complete_job_config,
    ):
        chronos_serviceinit.status_chronos_jobs(
            mock.Mock(),  # Chronos client
            "service",
            "instance",
            "cluster",
            "soa_dir_path",
            verbose,
        )
        assert mock_get_running_tasks.call_count == 1
Esempio n. 2
0
def test_status_chronos_jobs_is_deployed(
    mock_lookup_chronos_jobs,
    mock_load_chronos_job_config,
    mock_get_cached_list_of_running_tasks_from_frameworks,
    mock_format_chronos_job_status,
):
    jobs = [{"name": "my_service my_instance"}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    mock_load_chronos_job_config.return_value = complete_job_config
    mock_lookup_chronos_jobs.return_value = jobs
    mock_format_chronos_job_status.return_value = "job_status_output"
    mock_get_cached_list_of_running_tasks_from_frameworks.return_value = [
        {
            "id": "ct:1492206300000:0:my_service my_instance:"
        },
        {
            "id": "ct:1492206300000:0:not_my_service not_my_instance:"
        },
    ]
    fake_client = mock.Mock()

    actual = chronos_serviceinit.status_chronos_jobs(fake_client, "service",
                                                     "instance", "cluster",
                                                     "soa_dir_path", 0)
    assert "\njob_status_output" in actual
    assert mock_get_cached_list_of_running_tasks_from_frameworks.called
    mock_format_chronos_job_status.assert_called_once_with(
        fake_client, jobs[0], 1, verbose)
Esempio n. 3
0
def test_status_chronos_jobs_is_not_deployed():
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with mock.patch(
            "paasta_tools.chronos_serviceinit.format_chronos_job_status",
            autospec=True,
            return_value="job_status_output",
    ), mock.patch(
            "paasta_tools.chronos_serviceinit.get_cached_list_of_running_tasks_from_frameworks",
            autospec=True,
            return_value=[],
    ), mock.patch(
            "paasta_tools.chronos_serviceinit.chronos_tools.lookup_chronos_jobs",
            autospec=True,
            return_value=[],
    ), mock.patch(
            "paasta_tools.chronos_serviceinit.chronos_tools.load_chronos_job_config",
            autospec=True,
            return_value=complete_job_config,
    ):
        actual = chronos_serviceinit.status_chronos_jobs(
            mock.Mock(),  # Chronos client
            "service",
            "instance",
            "cluster",
            "soa_dir_path",
            verbose,
        )
        assert "not set up" in actual
Esempio n. 4
0
def test_status_chronos_jobs_get_desired_state_human():
    jobs = [{'name': 'my_service my_instance gityourmom configyourdad'}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with contextlib.nested(
            mock.patch(
                'paasta_tools.chronos_serviceinit.format_chronos_job_status',
                autospec=True,
                return_value='job_status_output',
            ),
            mock.patch(
                'paasta_tools.chronos_serviceinit.get_running_tasks_from_active_frameworks',
                autospec=True,
                return_value=[],
            ),
    ):
        actual = chronos_serviceinit.status_chronos_jobs(
            jobs,
            complete_job_config,
            verbose,
        )
        assert 'Desired:' in actual
        assert repr(
            complete_job_config.get_desired_state_human.return_value) in actual
Esempio n. 5
0
def test_status_chronos_jobs_multiple_jobs():
    jobs = [
        {
            'name': 'my_service my_instance gityourmom configyourdad'
        },
        {
            'name': 'my_service my_instance gityourmom configyourbro'
        },
    ]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with mock.patch(
            'paasta_tools.chronos_serviceinit.format_chronos_job_status',
            autospec=True,
            return_value='job_status_output',
    ), mock.patch(
            'paasta_tools.chronos_serviceinit.get_cached_list_of_running_tasks_from_frameworks',
            autospec=True,
            return_value=[],
    ):
        actual = chronos_serviceinit.status_chronos_jobs(
            mock.Mock(),  # Chronos client
            jobs,
            complete_job_config,
            verbose,
        )
        assert '\njob_status_output\njob_status_output' in actual
Esempio n. 6
0
def test_status_chronos_jobs_is_deployed(
    mock_get_cached_list_of_running_tasks_from_frameworks,
    mock_format_chronos_job_status,
):
    jobs = [{'name': 'my_service my_instance'}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False

    mock_format_chronos_job_status.return_value = 'job_status_output'
    mock_get_cached_list_of_running_tasks_from_frameworks.return_value = [
        {
            'id': 'ct:1492206300000:0:my_service my_instance:'
        },
        {
            'id': 'ct:1492206300000:0:not_my_service not_my_instance:'
        },
    ]
    fake_client = mock.Mock()

    actual = chronos_serviceinit.status_chronos_jobs(
        fake_client,
        jobs,
        complete_job_config,
        verbose,
    )
    assert '\njob_status_output' in actual
    assert mock_get_cached_list_of_running_tasks_from_frameworks.called
    mock_format_chronos_job_status.assert_called_once_with(
        fake_client, jobs[0], 1, verbose)
def test_status_chronos_jobs_multiple_jobs():
    jobs = [
        {'name': 'my_service my_instance gityourmom configyourdad'},
        {'name': 'my_service my_instance gityourmom configyourbro'},
    ]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with contextlib.nested(
        mock.patch(
            'paasta_tools.chronos_serviceinit.format_chronos_job_status',
            autospec=True,
            return_value='job_status_output',
        ),
        mock.patch(
            'paasta_tools.chronos_serviceinit.get_running_tasks_from_active_frameworks',
            autospec=True,
            return_value=[],
        ),
    ):
        actual = chronos_serviceinit.status_chronos_jobs(
            jobs,
            complete_job_config,
            verbose,
        )
        assert '\njob_status_output\njob_status_output' in actual
def test_status_chronos_jobs_get_running_tasks():
    jobs = [{"name": "my_service my_instance gityourmom configyourdad"}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with contextlib.nested(
        mock.patch(
            "paasta_tools.chronos_serviceinit.format_chronos_job_status",
            autospec=True,
            return_value="job_status_output",
        ),
        mock.patch(
            "paasta_tools.chronos_serviceinit.get_running_tasks_from_active_frameworks", autospec=True, return_value=[]
        ),
    ) as (_, mock_get_running_tasks):
        chronos_serviceinit.status_chronos_jobs(jobs, complete_job_config, verbose)
        assert mock_get_running_tasks.call_count == 1
Esempio n. 9
0
def chronos_instance_status(service: str, instance: str,
                            verbose: int) -> Dict[str, Any]:
    chronos_config = chronos_tools.load_chronos_config()
    client = chronos_tools.get_chronos_client(chronos_config)
    return {
        "output":
        chronos_serviceinit.status_chronos_jobs(client, service, instance,
                                                settings.cluster,
                                                settings.soa_dir, verbose)
    }
Esempio n. 10
0
def test_status_chronos_jobs_get_running_tasks():
    jobs = [{'name': 'my_service my_instance gityourmom configyourdad'}]
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with mock.patch(
            'paasta_tools.chronos_serviceinit.format_chronos_job_status',
            autospec=True,
            return_value='job_status_output',
    ), mock.patch(
            'paasta_tools.chronos_serviceinit.get_running_tasks_from_frameworks',
            autospec=True,
            return_value=[],
    ) as mock_get_running_tasks:
        chronos_serviceinit.status_chronos_jobs(
            mock.Mock(),  # Chronos client
            jobs,
            complete_job_config,
            verbose,
        )
        assert mock_get_running_tasks.call_count == 1
Esempio n. 11
0
def test_status_chronos_jobs_is_not_deployed():
    jobs = []
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with contextlib.nested(
        mock.patch(
            "paasta_tools.chronos_serviceinit.format_chronos_job_status",
            autospec=True,
            return_value="job_status_output",
        ),
        mock.patch(
            "paasta_tools.chronos_serviceinit.get_running_tasks_from_active_frameworks", autospec=True, return_value=[]
        ),
    ):
        actual = chronos_serviceinit.status_chronos_jobs(jobs, complete_job_config, verbose)
        assert "not set up" in actual
Esempio n. 12
0
def test_status_chronos_jobs_is_not_deployed():
    jobs = []
    complete_job_config = mock.Mock()
    complete_job_config.get_desired_state_human = mock.Mock()
    verbose = False
    with mock.patch(
            'paasta_tools.chronos_serviceinit.format_chronos_job_status',
            autospec=True,
            return_value='job_status_output',
    ), mock.patch(
            'paasta_tools.chronos_serviceinit.get_cached_list_of_running_tasks_from_frameworks',
            autospec=True,
            return_value=[],
    ):
        actual = chronos_serviceinit.status_chronos_jobs(
            mock.Mock(),  # Chronos client
            jobs,
            complete_job_config,
            verbose,
        )
        assert 'not set up' in actual