Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitab2a1c8

Browse files
committed
test(api): add functional test for release links API
1 parent958a6aa commitab2a1c8

File tree

3 files changed

+70
-35
lines changed

3 files changed

+70
-35
lines changed

‎tools/functional/api/test_projects.py

Lines changed: 1 addition & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -197,32 +197,6 @@ def test_project_protected_branches(project):
197197
assertlen(project.protectedbranches.list())==0
198198

199199

200-
deftest_project_releases(gl):
201-
project=gl.projects.create(
202-
{"name":"release-test-project","initialize_with_readme":True}
203-
)
204-
release_name="Demo Release"
205-
release_tag_name="v1.2.3"
206-
release_description="release notes go here"
207-
release=project.releases.create(
208-
{
209-
"name":release_name,
210-
"tag_name":release_tag_name,
211-
"description":release_description,
212-
"ref":"master",
213-
}
214-
)
215-
assertlen(project.releases.list())==1
216-
assertproject.releases.get(release_tag_name)
217-
assertrelease.name==release_name
218-
assertrelease.tag_name==release_tag_name
219-
assertrelease.description==release_description
220-
221-
project.releases.delete(release_tag_name)
222-
assertlen(project.releases.list())==0
223-
project.delete()
224-
225-
226200
deftest_project_remote_mirrors(project):
227201
mirror_url="http://gitlab.test/root/mirror.git"
228202

@@ -260,15 +234,7 @@ def test_project_stars(project):
260234
assertproject.star_count==0
261235

262236

263-
deftest_project_tags(project):
264-
project.files.create(
265-
{
266-
"file_path":"README",
267-
"branch":"master",
268-
"content":"Initial content",
269-
"commit_message":"Initial commit",
270-
}
271-
)
237+
deftest_project_tags(project,project_file):
272238
tag=project.tags.create({"tag_name":"v1.0","ref":"master"})
273239
assertlen(project.tags.list())==1
274240

‎tools/functional/api/test_releases.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
release_name="Demo Release"
2+
release_tag_name="v1.2.3"
3+
release_description="release notes go here"
4+
5+
link_data= {"url":"https://example.com","name":"link_name"}
6+
7+
8+
deftest_create_project_release(project,project_file):
9+
project.refresh()# Gets us the current default branch
10+
release=project.releases.create(
11+
{
12+
"name":release_name,
13+
"tag_name":release_tag_name,
14+
"description":release_description,
15+
"ref":project.default_branch,
16+
}
17+
)
18+
19+
assertlen(project.releases.list())==1
20+
assertproject.releases.get(release_tag_name)
21+
assertrelease.name==release_name
22+
assertrelease.tag_name==release_tag_name
23+
assertrelease.description==release_description
24+
25+
26+
deftest_delete_project_release(project,release):
27+
project.releases.delete(release.tag_name)
28+
assertreleasenotinproject.releases.list()
29+
30+
31+
deftest_create_project_release_links(project,release):
32+
link=release.links.create(link_data)
33+
34+
release=project.releases.get(release.tag_name)
35+
assertrelease.assets["links"][0]["url"]==link_data["url"]
36+
assertrelease.assets["links"][0]["name"]==link_data["name"]

‎tools/functional/conftest.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,39 @@ def project(gl):
196196
print(f"Project already deleted:{e}")
197197

198198

199+
@pytest.fixture(scope="module")
200+
defproject_file(project):
201+
"""File fixture for tests requiring a project with files and branches."""
202+
project_file=project.files.create(
203+
{
204+
"file_path":"README",
205+
"branch":"master",
206+
"content":"Initial content",
207+
"commit_message":"Initial commit",
208+
}
209+
)
210+
211+
returnproject_file
212+
213+
214+
@pytest.fixture(scope="function")
215+
defrelease(project,project_file):
216+
_id=uuid.uuid4().hex
217+
name=f"test-release-{_id}"
218+
219+
project.refresh()# Gets us the current default branch
220+
release=project.releases.create(
221+
{
222+
"name":name,
223+
"tag_name":_id,
224+
"description":"description",
225+
"ref":project.default_branch,
226+
}
227+
)
228+
229+
returnrelease
230+
231+
199232
@pytest.fixture(scope="module")
200233
defuser(gl):
201234
"""User fixture for user API resource tests."""

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp