@@ -587,6 +587,49 @@ def test_specifier_prereleases_set(
587587 # Test identity comparison by itself
588588 ("1.0" , "===1.0" , True ),
589589 ("1.0.dev0" , "===1.0.dev0" , True ),
590+ # Test case insensitivity for pre-release versions
591+ ("1.0a1" , "===1.0a1" , True ),
592+ ("1.0A1" , "===1.0A1" , True ),
593+ ("1.0a1" , "===1.0A1" , True ),
594+ ("1.0A1" , "===1.0a1" , True ),
595+ # Test case insensitivity for beta versions
596+ ("1.0b1" , "===1.0b1" , True ),
597+ ("1.0B1" , "===1.0B1" , True ),
598+ ("1.0b1" , "===1.0B1" , True ),
599+ ("1.0B1" , "===1.0b1" , True ),
600+ # Test case insensitivity for release candidate versions
601+ ("1.0rc1" , "===1.0rc1" , True ),
602+ ("1.0RC1" , "===1.0RC1" , True ),
603+ ("1.0rc1" , "===1.0RC1" , True ),
604+ ("1.0RC1" , "===1.0rc1" , True ),
605+ # Test case insensitivity for post-release versions
606+ ("1.0.post1" , "===1.0.post1" , True ),
607+ ("1.0.POST1" , "===1.0.POST1" , True ),
608+ ("1.0.post1" , "===1.0.POST1" , True ),
609+ ("1.0.POST1" , "===1.0.post1" , True ),
610+ # Test case insensitivity for dev versions
611+ ("1.0.dev1" , "===1.0.dev1" , True ),
612+ ("1.0.DEV1" , "===1.0.DEV1" , True ),
613+ ("1.0.dev1" , "===1.0.DEV1" , True ),
614+ ("1.0.DEV1" , "===1.0.dev1" , True ),
615+ # Test case insensitivity with local versions
616+ ("1.0+local" , "===1.0+local" , True ),
617+ ("1.0+LOCAL" , "===1.0+LOCAL" , True ),
618+ ("1.0+local" , "===1.0+LOCAL" , True ),
619+ ("1.0+LOCAL" , "===1.0+local" , True ),
620+ ("1.0+abc.def" , "===1.0+abc.def" , True ),
621+ ("1.0+ABC.DEF" , "===1.0+ABC.DEF" , True ),
622+ ("1.0+abc.def" , "===1.0+ABC.DEF" , True ),
623+ ("1.0+ABC.DEF" , "===1.0+abc.def" , True ),
624+ # Test case insensitivity with mixed case letters in local
625+ ("1.0+AbC" , "===1.0+AbC" , True ),
626+ ("1.0+AbC" , "===1.0+abc" , True ),
627+ ("1.0+AbC" , "===1.0+ABC" , True ),
628+ # Test complex cases with multiple segments
629+ ("1.0a1.post2.dev3" , "===1.0a1.post2.dev3" , True ),
630+ ("1.0A1.POST2.DEV3" , "===1.0A1.POST2.DEV3" , True ),
631+ ("1.0a1.post2.dev3" , "===1.0A1.POST2.DEV3" , True ),
632+ ("1.0A1.POST2.DEV3" , "===1.0a1.post2.dev3" , True ),
590633 ],
591634 )
592635 def test_specifiers_identity (
0 commit comments