|
1 | 1 | """
|
2 | 2 | GitLab API: https://docs.gitlab.com/ee/api/container_registry.html
|
3 | 3 | """
|
| 4 | +importre |
| 5 | + |
4 | 6 | importpytest
|
5 | 7 | importresponses
|
6 | 8 |
|
7 |
| -fromgitlab.v4.objectsimportProjectRegistryRepository |
| 9 | +fromgitlab.v4.objectsimportProjectRegistryRepository,RegistryRepository |
8 | 10 |
|
9 | 11 | repositories_content= [
|
10 | 12 | {
|
|
29 | 31 |
|
30 | 32 |
|
31 | 33 | @pytest.fixture
|
32 |
| -defresp_group_registry_repositories(): |
| 34 | +defresp_list_registry_repositories(): |
33 | 35 | withresponses.RequestsMock()asrsps:
|
34 | 36 | rsps.add(
|
35 | 37 | method=responses.GET,
|
36 |
| -url="http://localhost/api/v4/groups/1/registry/repositories", |
| 38 | +url=re.compile( |
| 39 | +r"http://localhost/api/v4/(groups|projects)/1/registry/repositories" |
| 40 | + ), |
37 | 41 | json=repositories_content,
|
38 | 42 | content_type="application/json",
|
39 | 43 | status=200,
|
40 | 44 | )
|
41 | 45 | yieldrsps
|
42 | 46 |
|
43 | 47 |
|
44 |
| -deftest_list_group_registry_repositories(group,resp_group_registry_repositories): |
| 48 | +@pytest.fixture |
| 49 | +defresp_get_registry_repository(): |
| 50 | +withresponses.RequestsMock()asrsps: |
| 51 | +rsps.add( |
| 52 | +method=responses.GET, |
| 53 | +url="http://localhost/api/v4/registry/repositories/1", |
| 54 | +json=repositories_content[0], |
| 55 | +content_type="application/json", |
| 56 | +status=200, |
| 57 | + ) |
| 58 | +yieldrsps |
| 59 | + |
| 60 | + |
| 61 | +@pytest.fixture |
| 62 | +defresp_delete_registry_repository(no_content): |
| 63 | +withresponses.RequestsMock()asrsps: |
| 64 | +rsps.add( |
| 65 | +method=responses.DELETE, |
| 66 | +url="http://localhost/api/v4/projects/1/registry/repositories/1", |
| 67 | +json=no_content, |
| 68 | +content_type="application/json", |
| 69 | +status=204, |
| 70 | + ) |
| 71 | +yieldrsps |
| 72 | + |
| 73 | + |
| 74 | +deftest_list_group_registry_repositories(group,resp_list_registry_repositories): |
45 | 75 | repositories=group.registry_repositories.list()
|
46 | 76 | assertisinstance(repositories[0],ProjectRegistryRepository)
|
47 | 77 | assertrepositories[0].id==1
|
| 78 | + |
| 79 | + |
| 80 | +deftest_list_project_registry_repositories(project,resp_list_registry_repositories): |
| 81 | +repositories=project.repositories.list() |
| 82 | +assertisinstance(repositories[0],ProjectRegistryRepository) |
| 83 | +assertrepositories[0].id==1 |
| 84 | + |
| 85 | + |
| 86 | +deftest_delete_project_registry_repository(project,resp_delete_registry_repository): |
| 87 | +project.repositories.delete(1) |
| 88 | + |
| 89 | + |
| 90 | +deftest_get_registry_repository(gl,resp_get_registry_repository): |
| 91 | +repository=gl.registry_repositories.get(1) |
| 92 | +assertisinstance(repository,RegistryRepository) |
| 93 | +assertrepository.id==1 |