Ejemplo n.º 1
0
 def test_drop(self, *, rmock: requests_mock.Mocker) -> None:
     rmock.delete(
         "http://test/api/publish/s3%3Amyendpoint%3Atest_a__1/test?force=1",
         text='{}')
     self.papi.drop(prefix='s3:myendpoint:test/a_1',
                    distribution='test',
                    force_delete=True)
Ejemplo n.º 2
0
 def test_delete_package(self, *, rmock: requests_mock.Mocker) -> None:
     rmock.delete(
         "http://test/api/repos/aptly-repo/packages",
         text='{"Name":"aptly-repo","Comment":"","DefaultDistribution":"","DefaultComponent":""}'
     )
     self.assertEqual(
         self.rapi.delete_packages_by_key("aptly-repo", "Pamd64 dirmngr 2.1.18-6 4c7412c5f0d7b30a"),
         Repo(name='aptly-repo', comment='', default_distribution='', default_component=''),
     )
Ejemplo n.º 3
0
def test_delete_project_without_wait(
    api_url: str,
    iguazio_client: mlrun.api.utils.clients.iguazio.Client,
    requests_mock: requests_mock_package.Mocker,
):
    project_name = "project-name"
    job_id = "928145d5-4037-40b0-98b6-19a76626d797"
    session = "1234"

    requests_mock.delete(
        f"{api_url}/api/projects",
        json=functools.partial(_verify_deletion, project_name, session, job_id),
    )
    is_running_in_background = iguazio_client.delete_project(
        session, project_name, wait_for_completion=False
    )
    assert is_running_in_background is True
Ejemplo n.º 4
0
def test_delete_project(
    api_url: str,
    nuclio_client: mlrun.api.utils.clients.nuclio.Client,
    requests_mock: requests_mock_package.Mocker,
):
    project_name = "project-name"

    def verify_deletion(request, context):
        assert (deepdiff.DeepDiff(
            _generate_project_body(project_name, with_namespace=False),
            request.json(),
            ignore_order=True,
        ) == {})
        context.status_code = http.HTTPStatus.NO_CONTENT.value

    requests_mock.delete(f"{api_url}/api/projects", json=verify_deletion)
    nuclio_client.delete_project(None, project_name)
Ejemplo n.º 5
0
def test_delete_user_does_not_exist(requests_mock: Mocker,
                                    git_repo_manager: GitRepoManagerClient):
    requests_mock.get(f'{git_repo_manager.base_url}/api/v1/users/{FAKE_USER}',
                      status_code=404)
    delete_user_mock = requests_mock.delete(
        f'{git_repo_manager.base_url}/api/v1/admin/users/{FAKE_USER}')
    response = git_repo_manager.delete_user(username=FAKE_USER)

    assert response is None
    assert delete_user_mock.call_count == 0
Ejemplo n.º 6
0
def test_standard_api(client: Fabricator, m: requests_mock.Mocker):
    client.standard(with_param='id')
    client.start()

    # Mock request
    m.get(BASE_URL + '/', text='OK')
    m.post(BASE_URL + '/', status_code=201)
    m.get(BASE_URL + '/1', text='OK')
    m.put(BASE_URL + '/1', status_code=202)
    m.patch(BASE_URL + '/1', status_code=202)
    m.delete(BASE_URL + '/1', status_code=204)

    # Call the endpoints
    assert client.all().status_code == 200
    get = client.get(id=1)
    assert get.status_code == 200 and get.text == 'OK'
    assert client.create(name='user').status_code == 201
    assert client.overwrite(id=1, name='user').status_code == 202
    assert client.update(id=1, name='user').status_code == 202
    assert client.delete(id=1).status_code == 204
Ejemplo n.º 7
0
def test_delete_project(
    api_url: str,
    iguazio_client: mlrun.api.utils.clients.iguazio.Client,
    requests_mock: requests_mock_package.Mocker,
):
    project_name = "project-name"
    job_id = "928145d5-4037-40b0-98b6-19a76626d797"
    session = "1234"

    requests_mock.delete(
        f"{api_url}/api/projects",
        json=functools.partial(_verify_deletion, project_name, session, job_id),
    )
    mocker, num_of_calls_until_completion = _mock_job_progress(
        api_url, requests_mock, session, job_id
    )
    is_running_in_background = iguazio_client.delete_project(session, project_name)
    assert is_running_in_background is False
    assert mocker.call_count == num_of_calls_until_completion

    # assert ignoring (and not exploding) on not found
    requests_mock.delete(
        f"{api_url}/api/projects", status_code=http.HTTPStatus.NOT_FOUND.value
    )
    iguazio_client.delete_project(session, project_name)

    # TODO: not sure really needed
    # assert correctly propagating 412 errors (will be returned when project has resources)
    requests_mock.delete(
        f"{api_url}/api/projects", status_code=http.HTTPStatus.PRECONDITION_FAILED.value
    )
    with pytest.raises(mlrun.errors.MLRunPreconditionFailedError):
        iguazio_client.delete_project(session, project_name)
Ejemplo n.º 8
0
def test_delete_project(
    api_url: str,
    nuclio_client: mlrun.api.utils.clients.nuclio.Client,
    requests_mock: requests_mock_package.Mocker,
):
    project_name = "project-name"

    def verify_deletion(request, context):
        assert (deepdiff.DeepDiff(
            _generate_project_body(project_name, with_namespace=False),
            request.json(),
            ignore_order=True,
        ) == {})
        assert (
            request.headers["x-nuclio-delete-project-strategy"] == mlrun.api.
            schemas.DeletionStrategy.default().to_nuclio_deletion_strategy())
        context.status_code = http.HTTPStatus.NO_CONTENT.value

    requests_mock.delete(f"{api_url}/api/projects", json=verify_deletion)
    nuclio_client.delete_project(None, project_name)

    # assert ignoring (and not exploding) on not found
    requests_mock.delete(f"{api_url}/api/projects",
                         status_code=http.HTTPStatus.NOT_FOUND.value)
    nuclio_client.delete_project(None, project_name)

    # assert correctly propagating 412 errors (will be returned when project has functions)
    requests_mock.delete(f"{api_url}/api/projects",
                         status_code=http.HTTPStatus.PRECONDITION_FAILED.value)
    with pytest.raises(mlrun.errors.MLRunPreconditionFailedError):
        nuclio_client.delete_project(None, project_name)
Ejemplo n.º 9
0
def test_delete_repository(requests_mock: Mocker,
                           git_repo_manager: GitRepoManagerClient):
    repo_name = 'fake_repo'
    get_repo_mock = requests_mock.get(
        f'{git_repo_manager.base_url}/api/v1/repos/{FAKE_USER}/{repo_name}',
        status_code=200)
    delete_repo_mock = requests_mock.delete(
        f'{git_repo_manager.base_url}/api/v1/repos/{FAKE_USER}/{repo_name}')
    response = git_repo_manager.delete_repository(username=FAKE_USER,
                                                  repository_name=repo_name)

    assert response
    assert get_repo_mock.call_count == 1
    assert delete_repo_mock.call_count == 1
Ejemplo n.º 10
0
 def test_delete(self, *, rmock: requests_mock.Mocker) -> None:
     rmock.delete("http://test/api/files/test", text='{}')
     self.fapi.delete("test")
Ejemplo n.º 11
0
 def test_delete(self, *, rmock: requests_mock.Mocker) -> None:
     rmock.delete("http://test/api/snapshots/aptly-repo-1", text='{}')
     self.sapi.delete("aptly-repo-1", force=True)