Lines Matching refs:self

67     def setUp(self):
69 self.sys_path = sys.path[:]
70 self.old_base = site.USER_BASE
71 self.old_site = site.USER_SITE
72 self.old_prefixes = site.PREFIXES
73 self.original_vars = sysconfig._CONFIG_VARS
74 self.old_vars = copy(sysconfig._CONFIG_VARS)
76 def tearDown(self):
78 sys.path[:] = self.sys_path
79 site.USER_BASE = self.old_base
80 site.USER_SITE = self.old_site
81 site.PREFIXES = self.old_prefixes
82 sysconfig._CONFIG_VARS = self.original_vars
86 sysconfig._CONFIG_VARS.update(self.old_vars)
88 def test_makepath(self):
95 self.assertEqual(os.path.abspath(original_dir), abs_dir)
97 self.assertEqual(abs_dir, norm_dir)
99 self.assertEqual(os.path.normcase(abs_dir), norm_dir)
101 def test_init_pathinfo(self):
105 self.assertIn(entry, dir_set,
109 def pth_file_tests(self, pth_file):
111 self.assertIn(pth_file.imported, sys.modules,
113 self.assertIn(site.makepath(pth_file.good_dir_path)[0], sys.path)
114 self.assertFalse(os.path.exists(pth_file.bad_dir_path))
116 def test_addpackage(self):
127 self.pth_file_tests(pth_file)
131 def make_pth(self, contents, pth_dir='.', pth_name=TESTFN):
137 self.addCleanup(lambda: os.remove(pth_fn))
141 def test_addpackage_import_bad_syntax(self):
143 pth_dir, pth_fn = self.make_pth("import bad-syntax\n")
146 self.assertRegex(err_out.getvalue(), "line 1")
147 self.assertRegex(err_out.getvalue(),
152 self.assertRegex(err_out.getvalue(), 'Traceback')
153 self.assertRegex(err_out.getvalue(), r'import bad-syntax')
154 self.assertRegex(err_out.getvalue(), 'SyntaxError')
156 def test_addpackage_import_bad_exec(self):
158 pth_dir, pth_fn = self.make_pth("randompath\nimport nosuchmodule\n")
161 self.assertRegex(err_out.getvalue(), "line 2")
162 self.assertRegex(err_out.getvalue(),
165 self.assertRegex(err_out.getvalue(), 'Traceback')
166 self.assertRegex(err_out.getvalue(), 'ModuleNotFoundError')
168 def test_addpackage_empty_lines(self):
170 pth_dir, pth_fn = self.make_pth("\n\n \n\n")
172 self.assertEqual(known_paths, set())
174 def test_addpackage_import_bad_pth_file(self):
176 pth_dir, pth_fn = self.make_pth("abc\x00def\n")
178 self.assertFalse(site.addpackage(pth_dir, pth_fn, set()))
179 self.maxDiff = None
180 self.assertEqual(err_out.getvalue(), "")
183 self.assertNotIn("abc\x00def", path)
185 def test_addsitedir(self):
194 self.pth_file_tests(pth_file)
200 def test__getuserbase(self):
201 self.assertEqual(site._getuserbase(), sysconfig._getuserbase())
204 def test_get_path(self):
209 self.assertEqual(os.path.normpath(site._get_path(site._getuserbase())),
215 def test_s_option(self):
218 self.assertIn(usersite, sys.path)
224 self.assertEqual(rc, 1)
231 self.assertEqual(rc, 1)
233 self.assertEqual(rc, 0, "User site still added to path with -s")
241 self.assertEqual(rc, 1)
243 self.assertEqual(rc, 0,
251 self.assertEqual(rc, 1,
255 def test_getuserbase(self):
260 self.assertEqual(site.USER_BASE, user_base)
269 self.assertTrue(site.getuserbase().startswith('xoxo'),
273 def test_getusersitepackages(self):
279 self.assertEqual(site.USER_SITE, user_site)
280 self.assertTrue(user_site.startswith(site.USER_BASE), user_site)
281 self.assertEqual(site.USER_BASE, site.getuserbase())
283 def test_getsitepackages(self):
289 self.assertEqual(len(dirs), 2)
293 self.assertEqual(dirs[0], wanted)
295 self.assertEqual(len(dirs), 1)
299 self.assertEqual(dirs[-1], wanted)
302 self.assertEqual(len(dirs), 2)
303 self.assertEqual(dirs[0], 'xoxo')
305 self.assertEqual(os.path.normcase(dirs[1]),
309 def test_no_home_directory(self):
323 self.assertTrue(user_base.startswith('~' + os.sep),
327 self.assertTrue(user_site.startswith(user_base), user_site)
340 self.assertFalse(known_paths)
342 def test_trace(self):
348 self.assertEqual(sys.stderr.getvalue(), out)
354 def __init__(self, filename_base=TESTFN, imported="time",
357 self.filename = filename_base + ".pth"
358 self.base_dir = os.path.abspath('')
359 self.file_path = os.path.join(self.base_dir, self.filename)
360 self.imported = imported
361 self.good_dirname = good_dirname
362 self.bad_dirname = bad_dirname
363 self.good_dir_path = os.path.join(self.base_dir, self.good_dirname)
364 self.bad_dir_path = os.path.join(self.base_dir, self.bad_dirname)
366 def create(self):
368 <self.imported>``, a line with self.good_dirname, and a line with
369 self.bad_dirname.
371 Creation of the directory for self.good_dir_path (based off of
372 self.good_dirname) is also performed.
374 Make sure to call self.cleanup() to undo anything done by this method.
377 FILE = open(self.file_path, 'w')
381 print("import %s" % self.imported, file=FILE)
382 print(self.good_dirname, file=FILE)
383 print(self.bad_dirname, file=FILE)
386 os.mkdir(self.good_dir_path)
388 def cleanup(self, prep=False):
389 """Make sure that the .pth file is deleted, self.imported is not in
390 sys.modules, and that both self.good_dirname and self.bad_dirname are
392 if os.path.exists(self.file_path):
393 os.remove(self.file_path)
395 self.imported_module = sys.modules.get(self.imported)
396 if self.imported_module:
397 del sys.modules[self.imported]
399 if self.imported_module:
400 sys.modules[self.imported] = self.imported_module
401 if os.path.exists(self.good_dir_path):
402 os.rmdir(self.good_dir_path)
403 if os.path.exists(self.bad_dir_path):
404 os.rmdir(self.bad_dir_path)
409 def setUp(self):
411 self.sys_path = sys.path[:]
413 def tearDown(self):
415 sys.path[:] = self.sys_path
417 def test_abs_paths_cached_None(self):
426 self.assertIsNone(sys.modules['test'].__cached__)
428 def test_no_duplicate_paths(self):
434 self.assertNotIn(path, seen_paths)
438 def test_add_build_dir(self):
444 def test_setting_quit(self):
446 self.assertTrue(hasattr(builtins, "quit"))
447 self.assertTrue(hasattr(builtins, "exit"))
449 def test_setting_copyright(self):
451 self.assertTrue(hasattr(builtins, "copyright"))
452 self.assertTrue(hasattr(builtins, "credits"))
453 self.assertTrue(hasattr(builtins, "license"))
455 def test_setting_help(self):
457 self.assertTrue(hasattr(builtins, "help"))
459 def test_sitecustomize_executed(self):
467 self.fail("sitecustomize not imported automatically")
473 def test_license_exists_at_url(self):
479 self.addCleanup(urllib.request.urlcleanup)
486 self.assertEqual(code, 200, msg="Can't find " + url)
492 def test_startup_imports(self):
500 self.assertEqual(popen.returncode, 0, repr(stdout))
509 self.skipTest(f"found {len(pth_files)} .pth files in: {path}")
520 self.assertEqual(popen.returncode, 0, (stdout, stderr))
523 self.assertIn('site', modules)
527 self.assertFalse(modules.intersection(re_mods), stderr)
530 self.assertNotIn('locale', modules, stderr)
533 self.assertNotIn('copyreg', modules, stderr)
540 self.assertFalse(modules.intersection(collection_mods), stderr)
543 def test_startup_interactivehook(self):
546 self.assertTrue(r, "'__interactivehook__' not added by site")
549 def test_startup_interactivehook_isolated(self):
553 self.assertFalse(r, "'__interactivehook__' added in isolated mode")
556 def test_startup_interactivehook_isolated_explicit(self):
560 self.assertTrue(r, "'__interactivehook__' not added by enablerlcompleter()")
565 def _create_underpth_exe(self, lines, exe_pth=True):
568 self.addCleanup(os_helper.rmtree, temp_dir)
585 def _create_underpth_exe(self, lines, exe_pth=True):
589 self.addCleanup(os_helper.rmtree, temp_dir)
598 def _calc_sys_path_for_underpth_nosite(self, sys_prefix, lines):
608 def test_underpth_basic(self):
612 exe_file = self._create_underpth_exe(pth_lines)
613 sys_path = self._calc_sys_path_for_underpth_nosite(
621 self.assertTrue(actual_sys_path, "sys.flags.no_site was False")
622 self.assertEqual(
629 def test_underpth_nosite_file(self):
638 exe_file = self._create_underpth_exe(pth_lines)
639 sys_path = self._calc_sys_path_for_underpth_nosite(
650 self.assertTrue(actual_sys_path, "sys.flags.no_site was False")
651 self.assertEqual(
658 def test_underpth_file(self):
661 exe_file = self._create_underpth_exe([
680 self.assertTrue(rc, "sys.path is incorrect")
683 def test_underpth_dll_file(self):
686 exe_file = self._create_underpth_exe([
705 self.assertTrue(rc, "sys.path is incorrect")