@@ -903,29 +903,29 @@ def setUp(self):
903
903
self .fake_open = InvocationRecorder ()
904
904
905
905
def test_empty_string (self ):
906
- self .do_test_use_builtin_open ("" , 1 )
906
+ self .do_test_use_builtin_open_text ("" , "r" )
907
907
908
908
def test_no_ext (self ):
909
- self .do_test_use_builtin_open ("abcd" , 2 )
909
+ self .do_test_use_builtin_open_text ("abcd" , "r" )
910
910
911
911
@unittest .skipUnless (gzip , "Requires gzip and zlib" )
912
912
def test_gz_ext_fake (self ):
913
913
original_open = gzip .open
914
914
gzip .open = self .fake_open
915
915
try :
916
- result = fileinput .hook_compressed ("test.gz" , "3 " )
916
+ result = fileinput .hook_compressed ("test.gz" , "r " )
917
917
finally :
918
918
gzip .open = original_open
919
919
920
920
self .assertEqual (self .fake_open .invocation_count , 1 )
921
- self .assertEqual (self .fake_open .last_invocation , (("test.gz" , "3 " ), {}))
921
+ self .assertEqual (self .fake_open .last_invocation , (("test.gz" , "r " ), {}))
922
922
923
923
@unittest .skipUnless (gzip , "Requires gzip and zlib" )
924
924
def test_gz_with_encoding_fake (self ):
925
925
original_open = gzip .open
926
926
gzip .open = lambda filename , mode : io .BytesIO (b'Ex-binary string' )
927
927
try :
928
- result = fileinput .hook_compressed ("test.gz" , "3 " , encoding = "utf-8" )
928
+ result = fileinput .hook_compressed ("test.gz" , "r " , encoding = "utf-8" )
929
929
finally :
930
930
gzip .open = original_open
931
931
self .assertEqual (list (result ), ['Ex-binary string' ])
@@ -935,23 +935,40 @@ def test_bz2_ext_fake(self):
935
935
original_open = bz2 .BZ2File
936
936
bz2 .BZ2File = self .fake_open
937
937
try :
938
- result = fileinput .hook_compressed ("test.bz2" , "4 " )
938
+ result = fileinput .hook_compressed ("test.bz2" , "r " )
939
939
finally :
940
940
bz2 .BZ2File = original_open
941
941
942
942
self .assertEqual (self .fake_open .invocation_count , 1 )
943
- self .assertEqual (self .fake_open .last_invocation , (("test.bz2" , "4 " ), {}))
943
+ self .assertEqual (self .fake_open .last_invocation , (("test.bz2" , "r " ), {}))
944
944
945
945
def test_blah_ext (self ):
946
- self .do_test_use_builtin_open ("abcd.blah" , "5 " )
946
+ self .do_test_use_builtin_open_binary ("abcd.blah" , "rb " )
947
947
948
948
def test_gz_ext_builtin (self ):
949
- self .do_test_use_builtin_open ("abcd.Gz" , "6 " )
949
+ self .do_test_use_builtin_open_binary ("abcd.Gz" , "rb " )
950
950
951
951
def test_bz2_ext_builtin (self ):
952
- self .do_test_use_builtin_open ("abcd.Bz2" , "7 " )
952
+ self .do_test_use_builtin_open_binary ("abcd.Bz2" , "rb " )
953
953
954
- def do_test_use_builtin_open (self , filename , mode ):
954
+ def test_binary_mode_encoding (self ):
955
+ self .do_test_use_builtin_open_binary ("abcd" , "rb" )
956
+
957
+ def test_text_mode_encoding (self ):
958
+ self .do_test_use_builtin_open_text ("abcd" , "r" )
959
+
960
+ def do_test_use_builtin_open_binary (self , filename , mode ):
961
+ original_open = self .replace_builtin_open (self .fake_open )
962
+ try :
963
+ result = fileinput .hook_compressed (filename , mode )
964
+ finally :
965
+ self .replace_builtin_open (original_open )
966
+
967
+ self .assertEqual (self .fake_open .invocation_count , 1 )
968
+ self .assertEqual (self .fake_open .last_invocation ,
969
+ ((filename , mode ), {'encoding' : None , 'errors' : None }))
970
+
971
+ def do_test_use_builtin_open_text (self , filename , mode ):
955
972
original_open = self .replace_builtin_open (self .fake_open )
956
973
try :
957
974
result = fileinput .hook_compressed (filename , mode )
0 commit comments