3636)
3737
3838
39+ # Deprecation helper
40+ def helper_image_new (mode : str , size : tuple [int , int ]) -> Image .Image :
41+ if mode .startswith ("BGR;" ):
42+ with pytest .warns (DeprecationWarning ):
43+ return Image .new (mode , size )
44+ else :
45+ return Image .new (mode , size )
46+
47+
3948class TestImage :
4049 @pytest .mark .parametrize ("mode" , modes )
4150 def test_image_modes_success (self , mode : str ) -> None :
42- Image . new (mode , (1 , 1 ))
51+ helper_image_new (mode , (1 , 1 ))
4352
4453 @pytest .mark .parametrize ("mode" , ("" , "bad" , "very very long" ))
4554 def test_image_modes_fail (self , mode : str ) -> None :
@@ -1023,15 +1032,19 @@ def test_roundtrip_bytes_constructor(self, mode: str) -> None:
10231032 im = hopper (mode )
10241033 source_bytes = im .tobytes ()
10251034
1026- reloaded = Image .frombytes (mode , im .size , source_bytes )
1035+ if mode .startswith ("BGR;" ):
1036+ with pytest .warns (DeprecationWarning ):
1037+ reloaded = Image .frombytes (mode , im .size , source_bytes )
1038+ else :
1039+ reloaded = Image .frombytes (mode , im .size , source_bytes )
10271040 assert reloaded .tobytes () == source_bytes
10281041
10291042 @pytest .mark .parametrize ("mode" , modes )
10301043 def test_roundtrip_bytes_method (self , mode : str ) -> None :
10311044 im = hopper (mode )
10321045 source_bytes = im .tobytes ()
10331046
1034- reloaded = Image . new (mode , im .size )
1047+ reloaded = helper_image_new (mode , im .size )
10351048 reloaded .frombytes (source_bytes )
10361049 assert reloaded .tobytes () == source_bytes
10371050
@@ -1040,7 +1053,7 @@ def test_getdata_putdata(self, mode: str) -> None:
10401053 if is_big_endian and mode == "BGR;15" :
10411054 pytest .xfail ("Known failure of BGR;15 on big-endian" )
10421055 im = hopper (mode )
1043- reloaded = Image . new (mode , im .size )
1056+ reloaded = helper_image_new (mode , im .size )
10441057 reloaded .putdata (im .getdata ())
10451058 assert_image_equal (im , reloaded )
10461059
0 commit comments