diff options
author | ayoub mrini <amrini@wiremind.fr> | 2020-03-19 23:30:40 +0100 |
---|---|---|
committer | ayoub mrini <amrini@wiremind.fr> | 2020-04-06 20:52:35 +0200 |
commit | 01de524ce39a67b549b3157bf4de827dd0568d6b (patch) | |
tree | e195869989b88b998ab0452ac8572c02895db396 /gitlab/tests/test_gitlab.py | |
parent | c5904c4c2e79ec302ff0de20bcb2792be4924bbe (diff) | |
download | gitlab-01de524ce39a67b549b3157bf4de827dd0568d6b.tar.gz |
feat(api): add support for Gitlab Deploy Token API
Diffstat (limited to 'gitlab/tests/test_gitlab.py')
-rw-r--r-- | gitlab/tests/test_gitlab.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/gitlab/tests/test_gitlab.py b/gitlab/tests/test_gitlab.py index d104c7d..113093a 100644 --- a/gitlab/tests/test_gitlab.py +++ b/gitlab/tests/test_gitlab.py @@ -920,6 +920,40 @@ class TestGitlab(unittest.TestCase): self.assertEqual(application.redirect_uri, "http://localhost:8080") self.assertEqual(application.scopes, ["api", "email"]) + def test_deploy_tokens(self): + @urlmatch( + scheme="http", + netloc="localhost", + path="/api/v4/projects/1/deploy_tokens", + method="post", + ) + def resp_deploy_token_create(url, request): + headers = {"content-type": "application/json"} + content = """{ + "id": 1, + "name": "test_deploy_token", + "username": "custom-user", + "expires_at": "2022-01-01T00:00:00.000Z", + "token": "jMRvtPNxrn3crTAGukpZ", + "scopes": [ "read_repository" ]}""" + content = content.encode("utf-8") + return response(200, content, headers, None, 5, request) + + with HTTMock(resp_deploy_token_create): + deploy_token = self.gl.projects.get(1, lazy=True).deploytokens.create( + { + "name": "test_deploy_token", + "expires_at": "2022-01-01T00:00:00.000Z", + "username": "custom-user", + "scopes": ["read_repository"], + } + ) + self.assertIsInstance(deploy_token, ProjectDeployToken) + self.assertEqual(deploy_token.id, 1), + self.assertEqual(deploy_token.expires_at, "2022-01-01T00:00:00.000Z"), + self.assertEqual(deploy_token.username, "custom-user") + self.assertEqual(deploy_token.scopes, ["read_repository"]) + def _default_config(self): fd, temp_path = tempfile.mkstemp() os.write(fd, valid_config) |