@@ -27,15 +27,49 @@ def test_VersionRange_to_string(self):
2727 # note the sorting taking place
2828 assert str (version_range ) == "vers:pypi/>=0.0.0|0.0.1|0.0.2|0.0.3|0.0.4|0.0.5|0.0.6"
2929
30- def test_VersionRange_not_contains (self ):
30+ def test_VersionRange_pypi_does_not_contain_basic (self ):
3131 vers = "vers:pypi/0.0.2|0.0.6|>=0.0.0|0.0.1|0.0.4|0.0.5|0.0.3"
3232 version_range = VersionRange .from_string (vers )
3333 assert not version_range .contains (PypiVersion ("2.0.3" ))
3434
35- def test_VersionRange_contains (self ):
35+ def test_VersionRange_does_not_contain_version_after_range (self ):
36+ vers = "vers:pypi/>=1.0.0|<=2.0.0"
37+ version_range = VersionRange .from_string (vers )
38+ assert not version_range .contains (PypiVersion ("2.0.3" ))
39+
40+ def test_VersionRange_does_not_contain_version_before_range (self ):
41+ vers = "vers:pypi/>=1.0.0|<=2.0.0"
42+ version_range = VersionRange .from_string (vers )
43+ assert not version_range .contains (PypiVersion ("0.0.9" ))
44+
45+ def test_VersionRange_does_not_contain_version_in_between (self ):
46+ vers = "vers:pypi/<=1.0.0|>=2.0.0"
47+ version_range = VersionRange .from_string (vers )
48+ assert not version_range .contains (PypiVersion ("1.5" ))
49+
50+ def test_VersionRange_does_not_contain_version_excluded (self ):
51+ vers = "vers:pypi/>=3.0.0|!=2.0.3"
52+ version_range = VersionRange .from_string (vers )
53+ assert not version_range .contains (PypiVersion ("2.0.3" ))
54+
55+ def test_VersionRange_contains_version_after (self ):
3656 version_range = VersionRange .from_string ("vers:pypi/>0.0.2" )
3757 assert PypiVersion ("0.0.3" ) in version_range
3858
59+ def test_VersionRange_contains_version_before (self ):
60+ version_range = VersionRange .from_string ("vers:pypi/<0.0.2" )
61+ assert PypiVersion ("0.0.0.1" ) in version_range
62+
63+ def test_VersionRange_contains_version_included (self ):
64+ vers = "vers:pypi/>=3.0.0|2.0.3"
65+ version_range = VersionRange .from_string (vers )
66+ assert version_range .contains (PypiVersion ("2.0.3" ))
67+
68+ def test_VersionRange_contains_version_in_between (self ):
69+ vers = "vers:pypi/>=1.0.0|<=2.0.0"
70+ version_range = VersionRange .from_string (vers )
71+ assert version_range .contains (PypiVersion ("1.5" ))
72+
3973 def test_VersionRange_from_string_pypi (self ):
4074 vers = "vers:pypi/0.0.2|0.0.6|0.0.0|0.0.1|0.0.4|0.0.5|0.0.3"
4175 version_range = VersionRange .from_string (vers )
0 commit comments