@@ -794,12 +794,37 @@ def test_to_datetime_np_str(self):
794794 ["2015-1-1" , "%G-%V-%u" , datetime (2014 , 12 , 29 , 0 , 0 )],
795795 ["2015-1-4" , "%G-%V-%u" , datetime (2015 , 1 , 1 , 0 , 0 )],
796796 ["2015-1-7" , "%G-%V-%u" , datetime (2015 , 1 , 4 , 0 , 0 )],
797+ ["2024-52-1" , "%G-%V-%u" , datetime (2024 , 12 , 23 , 0 , 0 )],
798+ ["2024-52-7" , "%G-%V-%u" , datetime (2024 , 12 , 29 , 0 , 0 )],
799+ ["2025-1-1" , "%G-%V-%u" , datetime (2024 , 12 , 30 , 0 , 0 )],
800+ ["2020-53-1" , "%G-%V-%u" , datetime (2020 , 12 , 28 , 0 , 0 )],
797801 ],
798802 )
799803 def test_to_datetime_iso_week_year_format (self , s , _format , dt ):
800804 # See GH#16607
801805 assert to_datetime (s , format = _format ) == dt
802806
807+ @pytest .mark .parametrize (
808+ "msg, s, _format" ,
809+ [
810+ [
811+ "Week 53 does not exist in ISO year 2024" ,
812+ "2024 53 1" ,
813+ "%G %V %u" ,
814+ ],
815+ [
816+ "Week 53 does not exist in ISO year 2023" ,
817+ "2023 53 1" ,
818+ "%G %V %u" ,
819+ ],
820+ ],
821+ )
822+ @pytest .mark .parametrize ("errors" , ["raise" ])
823+ def test_invalid_iso_week_53 (self , msg , s , _format , errors ):
824+ # See GH#60885
825+ with pytest .raises (ValueError , match = msg ):
826+ to_datetime (s , format = _format , errors = errors )
827+
803828 @pytest .mark .parametrize (
804829 "msg, s, _format" ,
805830 [
0 commit comments