55import stat
66import unittest
77
8- from pathlib ._abc import UnsupportedOperation , ParserBase , PurePathBase , PathBase
8+ from pathlib ._abc import UnsupportedOperation , PurePathBase , PathBase
9+ from pathlib ._types import Parser
910import posixpath
1011
1112from test .support .os_helper import TESTFN
@@ -31,22 +32,6 @@ def test_is_notimplemented(self):
3132 self .assertTrue (issubclass (UnsupportedOperation , NotImplementedError ))
3233 self .assertTrue (isinstance (UnsupportedOperation (), NotImplementedError ))
3334
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-
5035#
5136# Tests for the pure classes.
5237#
@@ -55,37 +40,6 @@ def test_unsupported_operation(self):
5540class PurePathBaseTest (unittest .TestCase ):
5641 cls = PurePathBase
5742
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-
8943 def test_magic_methods (self ):
9044 P = self .cls
9145 self .assertFalse (hasattr (P , '__fspath__' ))
@@ -100,12 +54,11 @@ def test_magic_methods(self):
10054 self .assertIs (P .__ge__ , object .__ge__ )
10155
10256 def test_parser (self ):
103- self .assertIsInstance (self .cls .parser , ParserBase )
57+ self .assertIs (self .cls .parser , posixpath )
10458
10559
10660class DummyPurePath (PurePathBase ):
10761 __slots__ = ()
108- parser = posixpath
10962
11063 def __eq__ (self , other ):
11164 if not isinstance (other , DummyPurePath ):
@@ -136,6 +89,9 @@ def setUp(self):
13689 self .sep = self .parser .sep
13790 self .altsep = self .parser .altsep
13891
92+ def test_parser (self ):
93+ self .assertIsInstance (self .cls .parser , Parser )
94+
13995 def test_constructor_common (self ):
14096 P = self .cls
14197 p = P ('a' )
@@ -1359,8 +1315,8 @@ def test_unsupported_operation(self):
13591315 self .assertRaises (e , p .write_bytes , b'foo' )
13601316 self .assertRaises (e , p .write_text , 'foo' )
13611317 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 ( '*' )) )
13641320 self .assertRaises (e , lambda : list (p .walk ()))
13651321 self .assertRaises (e , p .expanduser )
13661322 self .assertRaises (e , p .readlink )
@@ -1411,7 +1367,6 @@ class DummyPath(PathBase):
14111367 memory.
14121368 """
14131369 __slots__ = ()
1414- parser = posixpath
14151370
14161371 _files = {}
14171372 _directories = {}
0 commit comments