summaryrefslogtreecommitdiff
path: root/numpy/compat
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/compat')
-rw-r--r--numpy/compat/py3k.py2
-rw-r--r--numpy/compat/tests/test_compat.py19
2 files changed, 20 insertions, 1 deletions
diff --git a/numpy/compat/py3k.py b/numpy/compat/py3k.py
index f5ac3f9f8..4607d9502 100644
--- a/numpy/compat/py3k.py
+++ b/numpy/compat/py3k.py
@@ -36,7 +36,7 @@ if sys.version_info[0] >= 3:
return str(s)
def isfileobj(f):
- return isinstance(f, (io.FileIO, io.BufferedReader))
+ return isinstance(f, (io.FileIO, io.BufferedReader, io.BufferedWriter))
def open_latin1(filename, mode='r'):
return open(filename, mode=mode, encoding='iso-8859-1')
diff --git a/numpy/compat/tests/test_compat.py b/numpy/compat/tests/test_compat.py
new file mode 100644
index 000000000..3df142e04
--- /dev/null
+++ b/numpy/compat/tests/test_compat.py
@@ -0,0 +1,19 @@
+from os.path import join
+
+from numpy.compat import isfileobj
+from numpy.testing import TestCase, assert_
+from numpy.testing.utils import tempdir
+
+
+def test_isfileobj():
+ with tempdir(prefix="numpy_test_compat_") as folder:
+ filename = join(folder, 'a.bin')
+
+ with open(filename, 'wb') as f:
+ assert_(isfileobj(f))
+
+ with open(filename, 'ab') as f:
+ assert_(isfileobj(f))
+
+ with open(filename, 'rb') as f:
+ assert_(isfileobj(f))