From b6263ca313d9806a4b7f1a3a3441d54e6338cc94 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Wed, 13 Dec 2017 11:53:59 +0100 Subject: [PATCH] [3.6] Test atexit shutdown mechanism in a subprocess (GH-4828) (#4829) * Test atexit shutdown mechanism in a subprocess. (cherry picked from commit fc5db95e0063eafa2bfb7f487fcaad5a7c4b65a1) --- Lib/test/test_atexit.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/Lib/test/test_atexit.py b/Lib/test/test_atexit.py index 1d0b018aaf..aa56388ef6 100644 --- a/Lib/test/test_atexit.py +++ b/Lib/test/test_atexit.py @@ -3,6 +3,7 @@ import unittest import io import atexit from test import support +from test.support import script_helper ### helpers def h1(): @@ -152,6 +153,21 @@ class GeneralTest(unittest.TestCase): atexit._run_exitfuncs() self.assertEqual(l, [5]) + def test_shutdown(self): + # Actually test the shutdown mechanism in a subprocess + code = """if 1: + import atexit + + def f(msg): + print(msg) + + atexit.register(f, "one") + atexit.register(f, "two") + """ + res = script_helper.assert_python_ok("-c", code) + self.assertEqual(res.out.decode().splitlines(), ["two", "one"]) + self.assertFalse(res.err) + @support.cpython_only class SubinterpreterTest(unittest.TestCase): -- 2.50.1