Skip to content

Commit f6b6e18

Browse files
nejchJohnVillalovos
authored andcommitted
test: add more tests for container registries
1 parent 284d739 commit f6b6e18

File tree

1 file changed

+50
-4
lines changed

1 file changed

+50
-4
lines changed

tests/unit/objects/test_registry_repositories.py

Lines changed: 50 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
"""
22
GitLab API: https://docs.gitlab.com/ee/api/container_registry.html
33
"""
4+
import re
5+
46
import pytest
57
import responses
68

7-
from gitlab.v4.objects import ProjectRegistryRepository
9+
from gitlab.v4.objects import ProjectRegistryRepository, RegistryRepository
810

911
repositories_content = [
1012
{
@@ -29,19 +31,63 @@
2931

3032

3133
@pytest.fixture
32-
def resp_group_registry_repositories():
34+
def resp_list_registry_repositories():
3335
with responses.RequestsMock() as rsps:
3436
rsps.add(
3537
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+
),
3741
json=repositories_content,
3842
content_type="application/json",
3943
status=200,
4044
)
4145
yield rsps
4246

4347

44-
def test_list_group_registry_repositories(group, resp_group_registry_repositories):
48+
@pytest.fixture
49+
def resp_get_registry_repository():
50+
with responses.RequestsMock() as rsps:
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+
yield rsps
59+
60+
61+
@pytest.fixture
62+
def resp_delete_registry_repository(no_content):
63+
with responses.RequestsMock() as rsps:
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+
yield rsps
72+
73+
74+
def test_list_group_registry_repositories(group, resp_list_registry_repositories):
4575
repositories = group.registry_repositories.list()
4676
assert isinstance(repositories[0], ProjectRegistryRepository)
4777
assert repositories[0].id == 1
78+
79+
80+
def test_list_project_registry_repositories(project, resp_list_registry_repositories):
81+
repositories = project.repositories.list()
82+
assert isinstance(repositories[0], ProjectRegistryRepository)
83+
assert repositories[0].id == 1
84+
85+
86+
def test_delete_project_registry_repository(project, resp_delete_registry_repository):
87+
project.repositories.delete(1)
88+
89+
90+
def test_get_registry_repository(gl, resp_get_registry_repository):
91+
repository = gl.registry_repositories.get(1)
92+
assert isinstance(repository, RegistryRepository)
93+
assert repository.id == 1

0 commit comments

Comments
 (0)