Skip to content

Commit fc4f3bd

Browse files
committed
Add Tag.long_name (3.14.0 beta 2, 3.14.1)
1 parent 8309cd1 commit fc4f3bd

File tree

2 files changed

+29
-0
lines changed

2 files changed

+29
-0
lines changed

release.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,18 @@ def nickname(self) -> str:
190190
def gitname(self) -> str:
191191
return "v" + self.text
192192

193+
@property
194+
def long_name(self) -> str:
195+
if self.is_final:
196+
return self.text
197+
198+
level = {
199+
"a": "alpha",
200+
"b": "beta",
201+
"rc": "release candidate",
202+
}[self.level]
203+
return f"{self.normalized()} {level} {self.serial}"
204+
193205
def next_minor_release(self) -> Self:
194206
return self.__class__(f"{self.major}.{int(self.minor)+1}.0a0")
195207

tests/test_release_tag.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ def test_tag() -> None:
1919
assert tag.as_tuple() == (3, 12, 2, "f", 0)
2020
assert tag.branch == "3.12"
2121
assert tag.gitname == "v3.12.2"
22+
assert tag.long_name == "3.12.2"
2223
assert tag.is_alpha_release is False
2324
assert tag.is_feature_freeze_release is False
2425
assert tag.is_release_candidate is False
@@ -123,3 +124,19 @@ def test_tag_docs_attributes() -> None:
123124
assert rc.doc_version == "3.13"
124125
assert final_zero.doc_version == "3.13"
125126
assert final_3.doc_version == "3.13.3"
127+
128+
129+
def test_tag_long_name() -> None:
130+
# Arrange
131+
alpha = release.Tag("3.13.0a7")
132+
beta = release.Tag("3.13.0b1")
133+
rc = release.Tag("3.13.0rc3")
134+
final_zero = release.Tag("3.13.0")
135+
final_3 = release.Tag("3.13.3")
136+
137+
# Act / Assert
138+
assert alpha.long_name == "3.13.0 alpha 7"
139+
assert beta.long_name == "3.13.0 beta 1"
140+
assert rc.long_name == "3.13.0 release candidate 3"
141+
assert final_zero.long_name == "3.13.0"
142+
assert final_3.long_name == "3.13.3"

0 commit comments

Comments
 (0)