@@ -236,12 +236,11 @@ def test_version_detection(self, monkeypatch):
236236 if (major , minor ) == ("10" , "16" ):
237237 print (platforms , "macosx_11+" )
238238 # For 10.16, the real version is at least 11.0.
239- prefix , major , minor , _ = platforms [0 ].split ("_" , maxsplit = 3 )
239+ prefix , major , _ = platforms [0 ].split ("_" , maxsplit = 2 )
240240 assert prefix == "macosx"
241241 assert int (major ) >= 11
242- assert minor == "0"
243242 else :
244- expected = f"macosx_{ major } _{ minor } _ "
243+ expected = f"macosx_{ major } _"
245244 print (platforms , expected )
246245 assert platforms [0 ].startswith (expected )
247246
@@ -303,14 +302,20 @@ def test_mac_platforms(self):
303302
304303 assert not list (tags .mac_platforms ((10 , 0 ), "x86_64" ))
305304
306- @pytest .mark .parametrize ("major,minor" , [(11 , 0 ), (11 , 3 ), (12 , 0 ), (12 , 3 )])
305+ @pytest .mark .parametrize (
306+ "major,minor" , [(11 , 0 ), (11 , 3 ), (12 , 0 ), (12 , 3 ), (13 , 0 )]
307+ )
307308 def test_macos_11 (self , major , minor ):
308309 platforms = list (tags .mac_platforms ((major , minor ), "x86_64" ))
309310 assert "macosx_11_0_arm64" not in platforms
310311 assert "macosx_11_0_x86_64" in platforms
311312 assert "macosx_11_3_x86_64" not in platforms
312313 assert "macosx_11_0_universal" in platforms
313314 assert "macosx_11_0_universal2" in platforms
315+ assert "macosx_11_arm64" not in platforms
316+ assert "macosx_11_x86_64" in platforms
317+ assert "macosx_11_universal" in platforms
318+ assert "macosx_11_universal2" in platforms
314319 # Mac OS "10.16" is the version number that binaries compiled against an old
315320 # (pre 11.0) SDK will see. It can also be enabled explicitly for a process
316321 # with the environment variable SYSTEM_VERSION_COMPAT=1.
@@ -319,10 +324,22 @@ def test_macos_11(self, major, minor):
319324 assert "macosx_10_15_universal2" in platforms
320325 assert "macosx_10_4_x86_64" in platforms
321326 assert "macosx_10_3_x86_64" not in platforms
327+ assert "macosx_10_x86_64" not in platforms
328+ assert "macosx_10_universal2" not in platforms
322329 if major >= 12 :
323330 assert "macosx_12_0_x86_64" in platforms
324331 assert "macosx_12_0_universal" in platforms
325332 assert "macosx_12_0_universal2" in platforms
333+ assert "macosx_12_x86_64" in platforms
334+ assert "macosx_12_universal" in platforms
335+ assert "macosx_12_universal2" in platforms
336+ if major >= 13 :
337+ assert "macosx_13_0_x86_64" not in platforms
338+ assert "macosx_13_0_universal" not in platforms
339+ assert "macosx_13_0_universal2" not in platforms
340+ assert "macosx_13_x86_64" in platforms
341+ assert "macosx_13_universal" in platforms
342+ assert "macosx_13_universal2" in platforms
326343
327344 platforms = list (tags .mac_platforms ((major , minor ), "arm64" ))
328345 assert "macosx_11_0_arm64" in platforms
@@ -333,9 +350,21 @@ def test_macos_11(self, major, minor):
333350 assert "macosx_10_15_x86_64" not in platforms
334351 assert "macosx_10_4_x86_64" not in platforms
335352 assert "macosx_10_3_x86_64" not in platforms
353+ assert "macosx_11_arm64" in platforms
354+ assert "macosx_11_universal" not in platforms
355+ assert "macosx_11_universal2" in platforms
356+ assert "macosx_10_universal2" not in platforms
357+ assert "macosx_10_x86_64" not in platforms
336358 if major >= 12 :
337359 assert "macosx_12_0_arm64" in platforms
338360 assert "macosx_12_0_universal2" in platforms
361+ assert "macosx_12_arm64" in platforms
362+ assert "macosx_12_universal2" in platforms
363+ if major >= 13 :
364+ assert "macosx_13_0_arm64" not in platforms
365+ assert "macosx_13_0_universal2" not in platforms
366+ assert "macosx_13_arm64" in platforms
367+ assert "macosx_13_universal2" in platforms
339368
340369
341370class TestManylinuxPlatform :
@@ -1041,6 +1070,10 @@ def teardown_method(self):
10411070 # Clear the version cache
10421071 tags ._glibc_version = []
10431072
1073+ def test_interpreter_platform (self ):
1074+ tag = sysconfig .get_platform ().replace ("-" , "_" ).replace ("." , "_" )
1075+ assert tag in list (tags .platform_tags ())
1076+
10441077 @pytest .mark .parametrize (
10451078 "name,expected" ,
10461079 [("CPython" , "cp" ), ("PyPy" , "pp" ), ("Jython" , "jy" ), ("IronPython" , "ip" )],
0 commit comments