From: izbyshev Date: Mon, 18 Dec 2017 20:26:49 +0000 (+0700) Subject: bpo-32369: test_subprocess: Fix pass_fds check in test_close_fds() (#4920) X-Git-Tag: v3.7.0a4~103 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2d8f06382e7d5a759ca554110a699a397114824a;p=python bpo-32369: test_subprocess: Fix pass_fds check in test_close_fds() (#4920) The last part of test_close_fds() doesn't match its own comment. The following assertion always holds because fds_to_keep and open_fds are disjoint by construction. self.assertFalse(remaining_fds & fds_to_keep & open_fds, "Some fds not in pass_fds were left open") Fix the code to match the message in the assertion. --- diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py index bd3b9b46f7..540ad34d3f 100644 --- a/Lib/test/test_subprocess.py +++ b/Lib/test/test_subprocess.py @@ -2290,11 +2290,11 @@ class POSIXProcessTestCase(BaseTestCase): fds_to_keep = set(open_fds.pop() for _ in range(8)) p = subprocess.Popen([sys.executable, fd_status], stdout=subprocess.PIPE, close_fds=True, - pass_fds=()) + pass_fds=fds_to_keep) output, ignored = p.communicate() remaining_fds = set(map(int, output.split(b','))) - self.assertFalse(remaining_fds & fds_to_keep & open_fds, + self.assertFalse((remaining_fds - fds_to_keep) & open_fds, "Some fds not in pass_fds were left open") self.assertIn(1, remaining_fds, "Subprocess failed")