diff --git a/Lib/test/_test_multiprocessing.py b/Lib/test/_test_multiprocessing.py
index c0cc1a9..de0c968 100644
--- a/Lib/test/_test_multiprocessing.py
+++ b/Lib/test/_test_multiprocessing.py
@@ -3038,12 +3038,19 @@
 # Verifies os.close(sys.stdin.fileno) vs. sys.stdin.close() behavior
 #
 
-def _ThisSubProcess(q):
+def _this_sub_process(q):
     try:
         item = q.get(block=False)
     except pyqueue.Empty:
         pass
 
+def _test_process(q):
+    queue = multiprocessing.Queue()
+    subProc = multiprocessing.Process(target=_this_sub_process, args=(queue,))
+    subProc.daemon = True
+    subProc.start()
+    subProc.join()
+
 def _afunc(x):
     return x*x
 
@@ -3077,14 +3084,8 @@
 class TestStdinBadfiledescriptor(unittest.TestCase):
 
     def test_queue_in_process(self):
-        def _TestProcess(q):
-            queue = multiprocessing.Queue()
-            subProc = multiprocessing.Process(target=_ThisSubProcess, args=(queue,))
-            subProc.daemon = True
-            subProc.start()
-            subProc.join()
         queue = multiprocessing.Queue()
-        proc = multiprocessing.Process(target=_TestProcess, args=(queue,))
+        proc = multiprocessing.Process(target=_test_process, args=(queue,))
         proc.start()
         proc.join()
 
