Remove the non-client dependency from the retry module
The client module retry depends on a non-client module, i.e. the proxy module
of frontend.afe.json_rpc. This dependency prevents any client-side code
from importing the retry module.
Searching for the entire code base of Autotest, this proxy thing is used
only by the frontend_wrappers. So moved it to the frontend_wrappers.
Also fixed its unit test.
BUG=chromium:434943
TEST=retry_unittest.py passed.
Change-Id: Id9963068ea328ce357df6521d186fd9fa6d0a72b
Reviewed-on: https://chromium-review.googlesource.com/231152
Tested-by: Wai-Hong Tam <waihong@chromium.org>
Reviewed-by: Dan Shi <dshi@chromium.org>
Commit-Queue: Wai-Hong Tam <waihong@chromium.org>
diff --git a/client/common_lib/cros/retry.py b/client/common_lib/cros/retry.py
index ae2e425..d8512de 100644
--- a/client/common_lib/cros/retry.py
+++ b/client/common_lib/cros/retry.py
@@ -5,7 +5,6 @@
import logging, random, signal, sys, time
from autotest_lib.client.common_lib import error
-from autotest_lib.frontend.afe.json_rpc import proxy
def handler(signum, frame):
@@ -160,8 +159,7 @@
return result
except exception_tuple:
raise
- except (error.CrosDynamicSuiteException,
- proxy.ValidationError):
+ except error.CrosDynamicSuiteException:
raise
except ExceptionToCheck as e:
logging.warning('%s(%s)', e.__class__, e)