예제 #1
0
def test_meta_data_url(fake_client):
    """
    Verifies if url is created properly when using meta_data
    """
    meta_data = {"key1": 1, "key2": "2"}
    builds = Builds(fake_client, "base")
    builds.list_all(meta_data=meta_data)
    name, args, kwargs = fake_client.method_calls[-1]
    _, query_params = args
    assert query_params["meta_data[key1]"] == 1
    assert query_params["meta_data[key2]"] == "2"
예제 #2
0
    def test_no_meta_data_url(self, fake_client):
        """
        Verifies if url is created properly when using meta_data
        """
        builds = Builds(fake_client, "base")
        builds.list_all()

        name, args, kwargs = fake_client.method_calls[-1]
        _, query_params = args
        for key in query_params:
            assert "meta_data" not in key
예제 #3
0
def test_list_all_builds_multipe_build_states(fake_client):
    builds = Builds(fake_client, "https://api.buildkite.com/v2/")
    builds.list_all(states=[BuildState.RUNNING, BuildState.FINISHED])
    fake_client.get.assert_called_with(
        builds.path_for_all,
        {
            "creator": None,
            "created_from": None,
            "created_to": None,
            "finished_from": None,
            "state": "state[]=running&state[]=finished",
            "branch": None,
            "commit": None,
            "page": 0,
        },
        with_pagination=False,
    )
예제 #4
0
def test_list_all_builds_single_build_state(fake_client):
    builds = Builds(fake_client, "https://api.buildkite.com/v2/")
    builds.list_all(states=[BuildState.RUNNING])
    fake_client.get.assert_called_with(
        builds.path_for_all,
        {
            "creator": None,
            "created_from": None,
            "created_to": None,
            "finished_from": None,
            "state": "state=running",
            "branch": None,
            "commit": None,
            "include_retried_jobs": None,
            "page": 0,
        },
        with_pagination=False,
    )
예제 #5
0
def test_date_must_be_valid(fake_client):
    builds = Builds(fake_client, "https://api.buildkite.com/v2/")
    with pytest.raises(NotValidDateTime):
        builds.list_all(created_from="2017-02-03")
예제 #6
0
def test_build_state_must_be_valid(fake_client):
    builds = Builds(fake_client, "https://api.buildkite.com/v2/")
    with pytest.raises(NotValidBuildState):
        builds.list_all(states=["ran"])
예제 #7
0
def test_build_state_must_be_list(fake_client):
    builds = Builds(fake_client, "https://api.buildkite.com/v2/")
    with pytest.raises(BuildStateNotAList):
        builds.list_all(states=BuildState.RUNNING)