diff --git a/Lib/distutils/tests/test_build_py.py b/Lib/distutils/tests/test_build_py.py --- a/Lib/distutils/tests/test_build_py.py +++ b/Lib/distutils/tests/test_build_py.py @@ -58,7 +58,10 @@ pkgdest = os.path.join(destination, "pkg") files = os.listdir(pkgdest) self.assertTrue("__init__.py" in files) - self.assertTrue("__init__.pyc" in files) + if sys.dont_write_bytecode: + self.assertFalse("__init__.pyc" in files) + else: + self.assertTrue("__init__.pyc" in files) self.assertTrue("README.txt" in files) def test_empty_package_dir (self): diff --git a/Lib/test/test_imp.py b/Lib/test/test_imp.py --- a/Lib/test/test_imp.py +++ b/Lib/test/test_imp.py @@ -139,8 +139,9 @@ mod = imp.load_source(temp_mod_name, temp_mod_name + '.py') self.assertEqual(mod.a, 1) - mod = imp.load_compiled(temp_mod_name, temp_mod_name + '.pyc') - self.assertEqual(mod.a, 1) + if not sys.dont_write_bytecode: + mod = imp.load_compiled(temp_mod_name, temp_mod_name + '.pyc') + self.assertEqual(mod.a, 1) if not os.path.exists(test_package_name): os.mkdir(test_package_name) diff --git a/Lib/test/test_import.py b/Lib/test/test_import.py --- a/Lib/test/test_import.py +++ b/Lib/test/test_import.py @@ -96,6 +96,8 @@ @unittest.skipUnless(os.name == 'posix', "test meaningful only on posix systems") + @unittest.skipIf(sys.dont_write_bytecode, + "test meaningful only when writing bytecode") def test_execute_bit_not_copied(self): # Issue 6070: under posix .pyc files got their execute bit set if # the .py file had the execute bit set, but they aren't executable. @@ -244,6 +246,8 @@ remove_files(TESTFN) unload(TESTFN) + @unittest.skipIf(sys.dont_write_bytecode, + "test meaningful only when writing bytecode") def test_file_to_source(self): # check if __file__ points to the source file where available source = TESTFN + ".py" diff --git a/Lib/test/test_runpy.py b/Lib/test/test_runpy.py --- a/Lib/test/test_runpy.py +++ b/Lib/test/test_runpy.py @@ -164,11 +164,12 @@ del d1 # Ensure __loader__ entry doesn't keep file open __import__(mod_name) os.remove(mod_fname) - if verbose: print("Running from compiled:", mod_name) - d2 = run_module(mod_name) # Read from bytecode - self.assertTrue("x" in d2) - self.assertEqual(d2["x"], 1) - del d2 # Ensure __loader__ entry doesn't keep file open + if not sys.dont_write_bytecode: + if verbose: print("Running from compiled:", mod_name) + d2 = run_module(mod_name) # Read from bytecode + self.assertTrue("x" in d2) + self.assertEqual(d2["x"], 1) + del d2 # Ensure __loader__ entry doesn't keep file open finally: self._del_pkg(pkg_dir, depth, mod_name) if verbose: print("Module executed successfully") @@ -218,13 +219,14 @@ del d1 # Ensure __loader__ entry doesn't keep file open __import__(mod_name) os.remove(mod_fname) - if verbose: print("Running from compiled:", mod_name) - d2 = run_module(mod_name, run_name=run_name) # Read from bytecode - self.assertTrue("__package__" in d2) - self.assertTrue(d2["__package__"] == pkg_name) - self.assertTrue("sibling" in d2) - self.assertTrue("nephew" in d2) - del d2 # Ensure __loader__ entry doesn't keep file open + if not sys.dont_write_bytecode: + if verbose: print("Running from compiled:", mod_name) + d2 = run_module(mod_name, run_name=run_name) # Read from bytecode + self.assertTrue("__package__" in d2) + self.assertTrue(d2["__package__"] == pkg_name) + self.assertTrue("sibling" in d2) + self.assertTrue("nephew" in d2) + del d2 # Ensure __loader__ entry doesn't keep file open finally: self._del_pkg(pkg_dir, depth, mod_name) if verbose: print("Module executed successfully")