Commit a011e2b2 authored by Florent Xicluna's avatar Florent Xicluna

fileinput: replace this last occurence of codecs.open with builtins.open.

parent 5252f9fa
...@@ -398,9 +398,8 @@ def hook_compressed(filename, mode): ...@@ -398,9 +398,8 @@ def hook_compressed(filename, mode):
def hook_encoded(encoding): def hook_encoded(encoding):
import codecs
def openhook(filename, mode): def openhook(filename, mode):
return codecs.open(filename, mode, encoding) return open(filename, mode, encoding=encoding)
return openhook return openhook
......
...@@ -7,8 +7,7 @@ import sys ...@@ -7,8 +7,7 @@ import sys
import re import re
import fileinput import fileinput
import collections import collections
import types import builtins
import codecs
import unittest import unittest
try: try:
...@@ -807,18 +806,8 @@ class Test_hook_compressed(unittest.TestCase): ...@@ -807,18 +806,8 @@ class Test_hook_compressed(unittest.TestCase):
@staticmethod @staticmethod
def replace_builtin_open(new_open_func): def replace_builtin_open(new_open_func):
builtins_type = type(__builtins__) original_open = builtins.open
if builtins_type is dict: builtins.open = new_open_func
original_open = __builtins__["open"]
__builtins__["open"] = new_open_func
elif builtins_type is types.ModuleType:
original_open = __builtins__.open
__builtins__.open = new_open_func
else:
raise RuntimeError(
"unknown __builtins__ type: %r (unable to replace open)" %
builtins_type)
return original_open return original_open
class Test_hook_encoded(unittest.TestCase): class Test_hook_encoded(unittest.TestCase):
...@@ -829,21 +818,22 @@ class Test_hook_encoded(unittest.TestCase): ...@@ -829,21 +818,22 @@ class Test_hook_encoded(unittest.TestCase):
result = fileinput.hook_encoded(encoding) result = fileinput.hook_encoded(encoding)
fake_open = InvocationRecorder() fake_open = InvocationRecorder()
original_open = codecs.open original_open = builtins.open
codecs.open = fake_open builtins.open = fake_open
try: try:
filename = object() filename = object()
mode = object() mode = object()
open_result = result(filename, mode) open_result = result(filename, mode)
finally: finally:
codecs.open = original_open builtins.open = original_open
self.assertEqual(fake_open.invocation_count, 1) self.assertEqual(fake_open.invocation_count, 1)
args = fake_open.last_invocation[0] args, kwargs = fake_open.last_invocation
self.assertIs(args[0], filename) self.assertIs(args[0], filename)
self.assertIs(args[1], mode) self.assertIs(args[1], mode)
self.assertIs(args[2], encoding) self.assertIs(kwargs.pop('encoding'), encoding)
self.assertFalse(kwargs)
def test_main(): def test_main():
run_unittest( run_unittest(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment