From: Steve Dower Date: Sat, 17 Sep 2016 21:35:32 +0000 (-0700) Subject: Issue #28192: Adds tests for hook in isolated mode X-Git-Tag: v3.6.0b2~182 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6dd8eca4a95f60b8ed8517ad2f8f48405907f56c;p=python Issue #28192: Adds tests for hook in isolated mode --- diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py index b048648226..d2fbb7ba2e 100644 --- a/Lib/test/test_site.py +++ b/Lib/test/test_site.py @@ -471,5 +471,23 @@ class StartupImportTests(unittest.TestCase): if sys.platform != 'darwin': self.assertFalse(modules.intersection(collection_mods), stderr) + def test_startup_interactivehook(self): + r = subprocess.Popen([sys.executable, '-c', + 'import sys; sys.exit(hasattr(sys, "__interactivehook__"))']).wait() + self.assertTrue(r, "'__interactivehook__' not added by site") + + def test_startup_interactivehook_isolated(self): + # issue28192 readline is not automatically enabled in isolated mode + r = subprocess.Popen([sys.executable, '-I', '-c', + 'import sys; sys.exit(hasattr(sys, "__interactivehook__"))']).wait() + self.assertFalse(r, "'__interactivehook__' added in isolated mode") + + def test_startup_interactivehook_isolated_explicit(self): + # issue28192 readline can be explicitly enabled in isolated mode + r = subprocess.Popen([sys.executable, '-I', '-c', + 'import site, sys; site.enablerlcompleter(); sys.exit(hasattr(sys, "__interactivehook__"))']).wait() + self.assertTrue(r, "'__interactivehook__' not added by enablerlcompleter()") + + if __name__ == "__main__": unittest.main()