cbuildbot: fix double mocks

This unittest was patching RunTestSuite twice with autospec enabled
which doesn't really work (we need the spec of the target, not of
the mock).  It also breaks with newer versions of mock that check
the target argument more thoroughly and reject a mock.

BUG=chromium:1015720
TEST=`./run_tests` passes

Change-Id: I5bf78d5acd7c7c3c744ffb99b6b414cd01a972d7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/2690931
Tested-by: Mike Frysinger <vapier@chromium.org>
Auto-Submit: Mike Frysinger <vapier@chromium.org>
Commit-Queue: Navil Perez <navil@google.com>
Reviewed-by: Navil Perez <navil@google.com>
diff --git a/cbuildbot/stages/vm_test_stages_unittest.py b/cbuildbot/stages/vm_test_stages_unittest.py
index a9b3a07..b1c6517 100644
--- a/cbuildbot/stages/vm_test_stages_unittest.py
+++ b/cbuildbot/stages/vm_test_stages_unittest.py
@@ -117,8 +117,9 @@
     for cmd in ('GenerateStackTraces', 'ArchiveFile',
                 'UploadArchivedFile', 'BuildAndArchiveTestResultsTarball'):
       self.PatchObject(commands, cmd, autospec=True)
+    self.run_test_suite_mock = self.PatchObject(
+        vm_test_stages, 'RunTestSuite', autospec=True)
     for cmd in (
-        'RunTestSuite',
         'ArchiveTestResults',
         'ArchiveVMFiles',
         'RunDevModeTest',
@@ -212,11 +213,7 @@
 
     # pylint: enable=unused-argument
 
-    self.PatchObject(
-        vm_test_stages,
-        'RunTestSuite',
-        autospec=True,
-        side_effect=_MockRunTestSuite)
+    self.run_test_suite_mock.side_effect = _MockRunTestSuite
     results_lib.Results.Clear()
     self.RunStage()
     result = results_lib.Results.Get()[0]