summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNejc Habjan <nejc.habjan@siemens.com>2022-07-20 16:04:32 +0200
committerJohn Villalovos <john@sodarock.com>2022-07-20 07:41:38 -0700
commitf6b6e18f96f4cdf67c8c53ae79e6a8259dcce9ee (patch)
treed0959765b744fafba2011946a435ff789f7915e4
parent284d73950ad5cf5dfbdec2f91152ed13931bd0ee (diff)
downloadgitlab-f6b6e18f96f4cdf67c8c53ae79e6a8259dcce9ee.tar.gz
test: add more tests for container registries
-rw-r--r--tests/unit/objects/test_registry_repositories.py54
1 files changed, 50 insertions, 4 deletions
diff --git a/tests/unit/objects/test_registry_repositories.py b/tests/unit/objects/test_registry_repositories.py
index 6192917..09b88ab 100644
--- a/tests/unit/objects/test_registry_repositories.py
+++ b/tests/unit/objects/test_registry_repositories.py
@@ -1,10 +1,12 @@
"""
GitLab API: https://docs.gitlab.com/ee/api/container_registry.html
"""
+import re
+
import pytest
import responses
-from gitlab.v4.objects import ProjectRegistryRepository
+from gitlab.v4.objects import ProjectRegistryRepository, RegistryRepository
repositories_content = [
{
@@ -29,11 +31,13 @@ repositories_content = [
@pytest.fixture
-def resp_group_registry_repositories():
+def resp_list_registry_repositories():
with responses.RequestsMock() as rsps:
rsps.add(
method=responses.GET,
- url="http://localhost/api/v4/groups/1/registry/repositories",
+ url=re.compile(
+ r"http://localhost/api/v4/(groups|projects)/1/registry/repositories"
+ ),
json=repositories_content,
content_type="application/json",
status=200,
@@ -41,7 +45,49 @@ def resp_group_registry_repositories():
yield rsps
-def test_list_group_registry_repositories(group, resp_group_registry_repositories):
+@pytest.fixture
+def resp_get_registry_repository():
+ with responses.RequestsMock() as rsps:
+ rsps.add(
+ method=responses.GET,
+ url="http://localhost/api/v4/registry/repositories/1",
+ json=repositories_content[0],
+ content_type="application/json",
+ status=200,
+ )
+ yield rsps
+
+
+@pytest.fixture
+def resp_delete_registry_repository(no_content):
+ with responses.RequestsMock() as rsps:
+ rsps.add(
+ method=responses.DELETE,
+ url="http://localhost/api/v4/projects/1/registry/repositories/1",
+ json=no_content,
+ content_type="application/json",
+ status=204,
+ )
+ yield rsps
+
+
+def test_list_group_registry_repositories(group, resp_list_registry_repositories):
repositories = group.registry_repositories.list()
assert isinstance(repositories[0], ProjectRegistryRepository)
assert repositories[0].id == 1
+
+
+def test_list_project_registry_repositories(project, resp_list_registry_repositories):
+ repositories = project.repositories.list()
+ assert isinstance(repositories[0], ProjectRegistryRepository)
+ assert repositories[0].id == 1
+
+
+def test_delete_project_registry_repository(project, resp_delete_registry_repository):
+ project.repositories.delete(1)
+
+
+def test_get_registry_repository(gl, resp_get_registry_repository):
+ repository = gl.registry_repositories.get(1)
+ assert isinstance(repository, RegistryRepository)
+ assert repository.id == 1