5
5
import stat
6
6
import unittest
7
7
8
- from pathlib ._abc import UnsupportedOperation , ParserBase , PurePathBase , PathBase
8
+ from pathlib ._abc import UnsupportedOperation , PurePathBase , PathBase
9
+ from pathlib ._types import Parser
9
10
import posixpath
10
11
11
12
from test .support .os_helper import TESTFN
@@ -31,22 +32,6 @@ def test_is_notimplemented(self):
31
32
self .assertTrue (issubclass (UnsupportedOperation , NotImplementedError ))
32
33
self .assertTrue (isinstance (UnsupportedOperation (), NotImplementedError ))
33
34
34
-
35
- class ParserBaseTest (unittest .TestCase ):
36
- cls = ParserBase
37
-
38
- def test_unsupported_operation (self ):
39
- m = self .cls ()
40
- e = UnsupportedOperation
41
- with self .assertRaises (e ):
42
- m .sep
43
- self .assertRaises (e , m .join , 'foo' )
44
- self .assertRaises (e , m .split , 'foo' )
45
- self .assertRaises (e , m .splitdrive , 'foo' )
46
- self .assertRaises (e , m .splitext , 'foo' )
47
- self .assertRaises (e , m .normcase , 'foo' )
48
- self .assertRaises (e , m .isabs , 'foo' )
49
-
50
35
#
51
36
# Tests for the pure classes.
52
37
#
@@ -55,37 +40,6 @@ def test_unsupported_operation(self):
55
40
class PurePathBaseTest (unittest .TestCase ):
56
41
cls = PurePathBase
57
42
58
- def test_unsupported_operation_pure (self ):
59
- p = self .cls ('foo' )
60
- e = UnsupportedOperation
61
- with self .assertRaises (e ):
62
- p .drive
63
- with self .assertRaises (e ):
64
- p .root
65
- with self .assertRaises (e ):
66
- p .anchor
67
- with self .assertRaises (e ):
68
- p .parts
69
- with self .assertRaises (e ):
70
- p .parent
71
- with self .assertRaises (e ):
72
- p .parents
73
- with self .assertRaises (e ):
74
- p .name
75
- with self .assertRaises (e ):
76
- p .stem
77
- with self .assertRaises (e ):
78
- p .suffix
79
- with self .assertRaises (e ):
80
- p .suffixes
81
- self .assertRaises (e , p .with_name , 'bar' )
82
- self .assertRaises (e , p .with_stem , 'bar' )
83
- self .assertRaises (e , p .with_suffix , '.txt' )
84
- self .assertRaises (e , p .relative_to , '' )
85
- self .assertRaises (e , p .is_relative_to , '' )
86
- self .assertRaises (e , p .is_absolute )
87
- self .assertRaises (e , p .match , '*' )
88
-
89
43
def test_magic_methods (self ):
90
44
P = self .cls
91
45
self .assertFalse (hasattr (P , '__fspath__' ))
@@ -100,12 +54,11 @@ def test_magic_methods(self):
100
54
self .assertIs (P .__ge__ , object .__ge__ )
101
55
102
56
def test_parser (self ):
103
- self .assertIsInstance (self .cls .parser , ParserBase )
57
+ self .assertIs (self .cls .parser , posixpath )
104
58
105
59
106
60
class DummyPurePath (PurePathBase ):
107
61
__slots__ = ()
108
- parser = posixpath
109
62
110
63
def __eq__ (self , other ):
111
64
if not isinstance (other , DummyPurePath ):
@@ -136,6 +89,9 @@ def setUp(self):
136
89
self .sep = self .parser .sep
137
90
self .altsep = self .parser .altsep
138
91
92
+ def test_parser (self ):
93
+ self .assertIsInstance (self .cls .parser , Parser )
94
+
139
95
def test_constructor_common (self ):
140
96
P = self .cls
141
97
p = P ('a' )
@@ -1359,8 +1315,8 @@ def test_unsupported_operation(self):
1359
1315
self .assertRaises (e , p .write_bytes , b'foo' )
1360
1316
self .assertRaises (e , p .write_text , 'foo' )
1361
1317
self .assertRaises (e , p .iterdir )
1362
- self .assertRaises (e , p .glob , '*' )
1363
- self .assertRaises (e , p .rglob , '*' )
1318
+ self .assertRaises (e , lambda : list ( p .glob ( '*' )) )
1319
+ self .assertRaises (e , lambda : list ( p .rglob ( '*' )) )
1364
1320
self .assertRaises (e , lambda : list (p .walk ()))
1365
1321
self .assertRaises (e , p .expanduser )
1366
1322
self .assertRaises (e , p .readlink )
@@ -1411,7 +1367,6 @@ class DummyPath(PathBase):
1411
1367
memory.
1412
1368
"""
1413
1369
__slots__ = ()
1414
- parser = posixpath
1415
1370
1416
1371
_files = {}
1417
1372
_directories = {}
0 commit comments