diff options
| -rw-r--r-- | gitlab/v4/objects/releases.py | 2 | ||||
| -rw-r--r-- | tests/functional/api/test_releases.py | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/gitlab/v4/objects/releases.py b/gitlab/v4/objects/releases.py index 6216e45..e27052d 100644 --- a/gitlab/v4/objects/releases.py +++ b/gitlab/v4/objects/releases.py @@ -19,7 +19,7 @@ class ProjectReleaseManager(CRUDMixin, RESTManager): _obj_cls = ProjectRelease _from_parent_attrs = {"project_id": "id"} _create_attrs = RequiredOptional( - required=("name", "tag_name", "description"), optional=("ref", "assets") + required=("tag_name", "description"), optional=("name", "ref", "assets") ) _update_attrs = RequiredOptional( optional=("name", "description", "milestones", "released_at") diff --git a/tests/functional/api/test_releases.py b/tests/functional/api/test_releases.py index 81ae7de..f409c23 100644 --- a/tests/functional/api/test_releases.py +++ b/tests/functional/api/test_releases.py @@ -23,6 +23,24 @@ def test_create_project_release(project, project_file): assert release.description == release_description +def test_create_project_release_no_name(project, project_file): + unnamed_release_tag_name = "v2.3.4" + + project.refresh() # Gets us the current default branch + release = project.releases.create( + { + "tag_name": unnamed_release_tag_name, + "description": release_description, + "ref": project.default_branch, + } + ) + + assert len(project.releases.list()) >= 1 + assert project.releases.get(unnamed_release_tag_name) + assert release.tag_name == unnamed_release_tag_name + assert release.description == release_description + + def test_update_save_project_release(project, release): updated_description = f"{release.description} updated" release.description = updated_description |
