@@ -332,6 +332,16 @@ def test_mix_bytes_str(self):
332332 self .assertRaises (TypeError , filter , ['test' ], b'*' )
333333 self .assertRaises (TypeError , filter , [b'test' ], '*' )
334334
335+
336+ def test_mix_bytes_str_pathlike (self ):
337+ path = pathlib .Path ("test" )
338+ self .assertRaises (TypeError , filter , [path ], b'*' )
339+ self .assertRaises (TypeError , filter , [path , b'test' ], '*' )
340+ self .assertRaises (TypeError , filter , [b'test' , path ], '*' )
341+ self .assertRaises (TypeError , filter , [path , 'test' ], b'*' )
342+ self .assertRaises (TypeError , filter , ['test' , path ], b'*' )
343+ self .assertEqual (filter ([path , 'other' ], 'te*' ), [path ])
344+
335345 def test_case (self ):
336346 self .assertEqual (filter (['Test.py' , 'Test.rb' , 'Test.PL' ], '*.p*' ),
337347 ['Test.py' , 'Test.PL' ] if IGNORECASE else ['Test.py' ])
@@ -360,6 +370,16 @@ def test_mix_bytes_str(self):
360370 self .assertRaises (TypeError , filterfalse , ['test' ], b'*' )
361371 self .assertRaises (TypeError , filterfalse , [b'test' ], '*' )
362372
373+
374+ def test_mix_bytes_str_pathlike (self ):
375+ path = pathlib .Path ("test" )
376+ self .assertRaises (TypeError , filterfalse , [path ], b'*' )
377+ self .assertRaises (TypeError , filterfalse , [path , b'test' ], '*' )
378+ self .assertRaises (TypeError , filterfalse , [b'test' , path ], '*' )
379+ self .assertRaises (TypeError , filterfalse , [path , 'test' ], b'*' )
380+ self .assertRaises (TypeError , filterfalse , ['test' , path ], b'*' )
381+ self .assertEqual (filterfalse ([path , 'other' ], 'te*' ), ['other' ])
382+
363383 def test_case (self ):
364384 self .assertEqual (filterfalse (['Test.py' , 'Test.rb' , 'Test.PL' ], '*.p*' ),
365385 ['Test.rb' ] if IGNORECASE else ['Test.rb' , 'Test.PL' ])
0 commit comments