]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Wait for the watch process in test case
authorHong Hui Xiao <xiaohhui@cn.ibm.com>
Tue, 24 Nov 2015 14:01:48 +0000 (09:01 -0500)
committerHong Hui Xiao <xiaohhui@cn.ibm.com>
Tue, 24 Nov 2015 14:01:48 +0000 (09:01 -0500)
Because the _watch_process and the failing_process are asynchronous,
there might be a chance that failing_process exit and _watch_process
is not executed.

If the _watch_process is blocked, the method that will be asserted
will not be called. This will fail the UT, but it is intermittent.

Change-Id: Ic951c1b91c5a10462f548544a5e8d482c52ad665
Closes-Bug: #1519160

neutron/tests/unit/agent/linux/test_async_process.py

index 6e72061723f0dfc156d45137ad974911f6fa37b9..43ae302a27c40c0c5abc25e2fea380045c434012 100644 (file)
@@ -291,4 +291,7 @@ class TestFailingAsyncProcess(base.BaseTestCase):
                 as handle_error_mock:
             self.process.start()
             self.process._process.wait()
+            # Wait for the monitor process to complete
+            for thread in self.process._watchers:
+                thread.wait()
             self.assertEqual(1, handle_error_mock.call_count)