Skip to content

Commit bb2d236

Browse files
author
v.shepard
committed
Support special version
1 parent 94f9b35 commit bb2d236

File tree

2 files changed

+14
-2
lines changed

2 files changed

+14
-2
lines changed

testgres/utils.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
import tempfile
1212

1313
from contextlib import contextmanager
14-
from packaging.version import Version
14+
from packaging.version import Version, InvalidVersion
15+
import re
1516
try:
1617
from shutil import which as find_executable
1718
except ImportError:
@@ -27,8 +28,15 @@
2728
# ports used by nodes
2829
bound_ports = set()
2930

31+
3032
# re-export version type
31-
PgVer = Version
33+
class PgVer(Version):
34+
def __init__(self, version: str) -> None:
35+
try:
36+
super().__init__(version)
37+
except InvalidVersion:
38+
version = re.sub(r"[a-zA-Z]+", "", version)
39+
super().__init__(version)
3240

3341

3442
def reserve_port():

tests/test_simple.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -901,13 +901,17 @@ def test_version_management(self):
901901
d = PgVer('15.0')
902902
e = PgVer('15rc1')
903903
f = PgVer('15beta4')
904+
h = PgVer('15.3biha')
905+
i = PgVer('15.3')
904906

905907
self.assertTrue(a == b)
906908
self.assertTrue(b > c)
907909
self.assertTrue(a > c)
908910
self.assertTrue(d > e)
909911
self.assertTrue(e > f)
910912
self.assertTrue(d > f)
913+
self.assertTrue(h > f)
914+
self.assertTrue(h == i)
911915

912916
version = get_pg_version()
913917
with get_new_node() as node:

0 commit comments

Comments
 (0)