MCPcopy Index your code
hub / github.com/python/cpython / nameCheck

Method nameCheck

Lib/test/test_tempfile.py:94–128  ·  view source on GitHub ↗
(self, name, dir, pre, suf)

Source from the content-addressed store, hash-verified

92 message="mktemp", module=__name__)
93
94 def nameCheck(self, name, dir, pre, suf):
95 (ndir, nbase) = os.path.split(name)
96 npre = nbase[:len(pre)]
97 nsuf = nbase[len(nbase)-len(suf):]
98
99 if dir is not None:
100 self.assertIs(
101 type(name),
102 str
103 if type(dir) is str or isinstance(dir, os.PathLike) else
104 bytes,
105 "unexpected return type",
106 )
107 if pre is not None:
108 self.assertIs(type(name), str if type(pre) is str else bytes,
109 "unexpected return type")
110 if suf is not None:
111 self.assertIs(type(name), str if type(suf) is str else bytes,
112 "unexpected return type")
113 if (dir, pre, suf) == (None, None, None):
114 self.assertIs(type(name), str, "default return type must be str")
115
116 # check for equality of the absolute paths!
117 self.assertEqual(os.path.abspath(ndir), os.path.abspath(dir),
118 "file %r not in directory %r" % (name, dir))
119 self.assertEqual(npre, pre,
120 "file %r does not begin with %r" % (nbase, pre))
121 self.assertEqual(nsuf, suf,
122 "file %r does not end with %r" % (nbase, suf))
123
124 nbase = nbase[len(pre):len(nbase)-len(suf)]
125 check = self.str_check if isinstance(nbase, str) else self.b_check
126 self.assertTrue(check.match(nbase),
127 "random characters %r do not match %r"
128 % (nbase, check.pattern))
129
130
131class TestExports(BaseTestCase):

Callers 8

test_manyMethod · 0.80
do_createMethod · 0.80
do_createMethod · 0.80
do_createMethod · 0.80
do_createMethod · 0.80
do_createMethod · 0.80
do_createMethod · 0.80

Calls 6

assertTrueMethod · 0.80
splitMethod · 0.45
assertIsMethod · 0.45
assertEqualMethod · 0.45
abspathMethod · 0.45
matchMethod · 0.45

Tested by

no test coverage detected