mirror of
				https://github.com/astral-sh/uv.git
				synced 2025-10-31 03:55:33 +00:00 
			
		
		
		
	 79fbac7af5
			
		
	
	
		79fbac7af5
		
			
		
	
	
	
	
		
			
			Add a single job for for fast lint tools. Rustfmt for rust, ruff for python formatting and linting, prettier avoids inconsistent formatter changes between pycharm and vscode.
		
			
				
	
	
		
			49 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.7 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| """
 | |
| This is implementation has some very rudimentary python bindings
 | |
| """
 | |
| 
 | |
| from pep440_rs import Version, VersionSpecifier, Operator, VersionSpecifiers
 | |
| 
 | |
| 
 | |
| def test_pep440():
 | |
|     assert Version("1.1a1").any_prerelease()
 | |
|     assert Version("1.1.dev2").any_prerelease()
 | |
|     assert not Version("1.1").any_prerelease()
 | |
|     assert VersionSpecifier(">=1.0").contains(Version("1.1a1"))
 | |
|     assert not VersionSpecifier(">=1.1").contains(Version("1.1a1"))
 | |
|     assert Version("1.1") >= Version("1.1a1")
 | |
|     assert Version("2.0") in VersionSpecifier("==2")
 | |
|     assert Version("2.1").major == 2
 | |
|     assert Version("2.1").minor == 1
 | |
|     assert Version("2.1").micro == 0
 | |
| 
 | |
| 
 | |
| def test_version_specifier():
 | |
|     assert VersionSpecifier(">=1.1").version == Version("1.1")
 | |
|     assert VersionSpecifier(">=1.1").operator == Operator.GreaterThanEqual
 | |
|     assert str(VersionSpecifier(">=1.1").operator) == ">="
 | |
|     # Note: This removes the star
 | |
|     assert VersionSpecifier("==1.1.*").version == Version("1.1")
 | |
|     assert str(VersionSpecifier("==1.1.*").operator) == "=="
 | |
|     assert {
 | |
|         VersionSpecifier("==1.1.*"),
 | |
|         VersionSpecifier("==1.1"),
 | |
|         VersionSpecifier("==1.1"),
 | |
|     } == {VersionSpecifier("==1.1.*"), VersionSpecifier("==1.1")}
 | |
| 
 | |
| 
 | |
| def test_version_specifiers():
 | |
|     assert str(VersionSpecifiers(">=1.1, <2.0")) == ">=1.1, <2.0"
 | |
|     assert list(VersionSpecifiers(">=1.1, <2.0")) == [
 | |
|         VersionSpecifier(">=1.1"),
 | |
|         VersionSpecifier("<2.0"),
 | |
|     ]
 | |
| 
 | |
| 
 | |
| def test_normalization():
 | |
|     assert str(Version("1.19-alpha.1")) == "1.19a1"
 | |
|     assert str(VersionSpecifier(" >=1.19-alpha.1 ")) == ">=1.19a1"
 | |
|     assert repr(Version("1.19-alpha.1")) == '<Version("1.19a1")>'
 | |
|     assert (
 | |
|         repr(VersionSpecifier(" >=1.19-alpha.1 ")) == '<VersionSpecifier(">=1.19a1")>'
 | |
|     )
 |