Skip to content

Commit 4841d6f

Browse files
authored
Increase coverage (#268)
* Increase coverage in VersionInfo.compare * Test __repr__ * Test nextver subcommand * Run black
1 parent e8b388d commit 4841d6f

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed

test_semver.py

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
parse_version_info,
2626
process,
2727
replace,
28+
cmd_nextver,
2829
)
2930

3031
SEMVERFUNCS = [
@@ -659,6 +660,8 @@ def test_should_not_allow_to_compare_version_with_int():
659660
v1 > 1
660661
with pytest.raises(TypeError):
661662
1 > v1
663+
with pytest.raises(TypeError):
664+
v1.compare(1)
662665

663666

664667
def test_should_compare_prerelease_with_numbers_and_letters():
@@ -911,6 +914,22 @@ def test_should_parse_cli_arguments(cli, expected):
911914
# check subcommand
912915
(cmd_check, Namespace(version="1.2.3"), does_not_raise(None)),
913916
(cmd_check, Namespace(version="1.2"), pytest.raises(ValueError)),
917+
# nextver subcommand
918+
(
919+
cmd_nextver,
920+
Namespace(version="1.2.3", part="major"),
921+
does_not_raise("2.0.0"),
922+
),
923+
(
924+
cmd_nextver,
925+
Namespace(version="1.2", part="major"),
926+
pytest.raises(ValueError),
927+
),
928+
(
929+
cmd_nextver,
930+
Namespace(version="1.2.3", part="nope"),
931+
pytest.raises(ValueError),
932+
),
914933
],
915934
)
916935
def test_should_process_parsed_cli_arguments(func, args, expectation):
@@ -1074,3 +1093,36 @@ def test_next_version_with_versioninfo(version, part, expected):
10741093
next_version = ver.next_version(part)
10751094
assert isinstance(next_version, VersionInfo)
10761095
assert str(next_version) == expected
1096+
1097+
1098+
@pytest.mark.parametrize(
1099+
"version, expected",
1100+
[
1101+
(
1102+
VersionInfo(major=1, minor=2, patch=3, prerelease=None, build=None),
1103+
"VersionInfo(major=1, minor=2, patch=3, prerelease=None, build=None)",
1104+
),
1105+
(
1106+
VersionInfo(major=1, minor=2, patch=3, prerelease="r.1", build=None),
1107+
"VersionInfo(major=1, minor=2, patch=3, prerelease='r.1', build=None)",
1108+
),
1109+
(
1110+
VersionInfo(major=1, minor=2, patch=3, prerelease="dev.1", build=None),
1111+
"VersionInfo(major=1, minor=2, patch=3, prerelease='dev.1', build=None)",
1112+
),
1113+
(
1114+
VersionInfo(major=1, minor=2, patch=3, prerelease="dev.1", build="b.1"),
1115+
"VersionInfo(major=1, minor=2, patch=3, prerelease='dev.1', build='b.1')",
1116+
),
1117+
(
1118+
VersionInfo(major=1, minor=2, patch=3, prerelease="r.1", build="b.1"),
1119+
"VersionInfo(major=1, minor=2, patch=3, prerelease='r.1', build='b.1')",
1120+
),
1121+
(
1122+
VersionInfo(major=1, minor=2, patch=3, prerelease="r.1", build="build.1"),
1123+
"VersionInfo(major=1, minor=2, patch=3, prerelease='r.1', build='build.1')",
1124+
),
1125+
],
1126+
)
1127+
def test_repr(version, expected):
1128+
assert repr(version) == expected

0 commit comments

Comments
 (0)