mirror of
https://github.com/Cog-Creators/Red-DiscordBot.git
synced 2025-11-06 03:08:55 -05:00
Fix ordering of 3.0.0.dev1 and 3.0.0a1.dev1 versions (#5932)
This commit is contained in:
parent
abb0101420
commit
99479342ea
@ -149,12 +149,20 @@ class VersionInfo:
|
||||
]
|
||||
] = []
|
||||
for obj in (self, other):
|
||||
if (
|
||||
obj.releaselevel == obj.FINAL
|
||||
and obj.post_release is None
|
||||
and obj.dev_release is not None
|
||||
):
|
||||
releaselevel = -1
|
||||
else:
|
||||
releaselevel = obj._RELEASE_LEVELS.index(obj.releaselevel)
|
||||
tups.append(
|
||||
(
|
||||
obj.major,
|
||||
obj.minor,
|
||||
obj.micro,
|
||||
obj._RELEASE_LEVELS.index(obj.releaselevel),
|
||||
releaselevel,
|
||||
obj.serial if obj.serial is not None else _inf,
|
||||
obj.post_release if obj.post_release is not None else -_inf,
|
||||
obj.dev_release if obj.dev_release is not None else _inf,
|
||||
|
||||
@ -2,6 +2,7 @@ import importlib.metadata
|
||||
import os
|
||||
import sys
|
||||
from packaging.requirements import Requirement
|
||||
from packaging.version import Version
|
||||
|
||||
import pytest
|
||||
|
||||
@ -16,10 +17,20 @@ def test_version_working():
|
||||
|
||||
# When adding more of these, ensure they are added in ascending order of precedence
|
||||
version_tests = (
|
||||
"3.0.0.dev1",
|
||||
"3.0.0.dev2",
|
||||
"3.0.0a32.dev12",
|
||||
"3.0.0a32",
|
||||
"3.0.0a32.post10.dev12",
|
||||
"3.0.0a32.post10",
|
||||
"3.0.0b23.dev4",
|
||||
"3.0.0b23",
|
||||
"3.0.0b23.post5.dev16",
|
||||
"3.0.0b23.post5",
|
||||
"3.0.0rc1.dev1",
|
||||
"3.0.0rc1",
|
||||
"3.0.0",
|
||||
"3.0.0.post1.dev1",
|
||||
"3.0.1.dev1",
|
||||
"3.0.1.dev2+gdbaf31e",
|
||||
"3.0.1.dev2+gdbaf31e.dirty",
|
||||
@ -37,9 +48,10 @@ def test_version_info_str_parsing():
|
||||
|
||||
|
||||
def test_version_info_lt():
|
||||
for version_cls in (Version, VersionInfo.from_str):
|
||||
for next_idx, cur in enumerate(version_tests[:-1], start=1):
|
||||
cur_test = VersionInfo.from_str(cur)
|
||||
next_test = VersionInfo.from_str(version_tests[next_idx])
|
||||
cur_test = version_cls(cur)
|
||||
next_test = version_cls(version_tests[next_idx])
|
||||
assert cur_test < next_test
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user