@@ -21,6 +21,7 @@ |
|
|
21 |
21 |
|
22 |
22 |
from io import BytesIO, StringIO |
23 |
23 |
from fileinput import FileInput, hook_encoded |
|
24 |
+from pathlib import Path |
24 |
25 |
|
25 |
26 |
from test.support import verbose, TESTFN, check_warnings |
26 |
27 |
from test.support import unlink as safe_unlink |
@@ -530,6 +531,20 @@ def test_iteration_buffering(self): |
|
|
530 |
531 |
self.assertRaises(StopIteration, next, fi) |
531 |
532 |
self.assertEqual(src.linesread, []) |
532 |
533 |
|
|
534 |
+def test_pathlib_file(self): |
|
535 |
+t1 = None |
|
536 |
+try: |
|
537 |
+t1 = Path(writeTmp(1, ["Pathlib file."])) |
|
538 |
+with FileInput(t1) as fi: |
|
539 |
+line = fi.readline() |
|
540 |
+self.assertEqual(line, 'Pathlib file.') |
|
541 |
+self.assertEqual(fi.lineno(), 1) |
|
542 |
+self.assertEqual(fi.filelineno(), 1) |
|
543 |
+self.assertEqual(fi.filename(), os.fspath(t1)) |
|
544 |
+finally: |
|
545 |
+remove_tempfiles(t1) |
|
546 |
+ |
|
547 |
+ |
533 |
548 |
class MockFileInput: |
534 |
549 |
"""A class that mocks out fileinput.FileInput for use during unit tests""" |
535 |
550 |
|