BuildAPI: Add unit tests and mocks for Android service.
BUG=chromium:1000844
TEST=run_tests
Change-Id: Id43111a4224e73ebd202aae687506bbfd9a94d25
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/1930267
Reviewed-by: Alex Klein <saklein@chromium.org>
Tested-by: Michael Mortensen <mmortensen@google.com>
Commit-Queue: Michael Mortensen <mmortensen@google.com>
diff --git a/api/controller/android.py b/api/controller/android.py
index 1500ef8..cbddc71 100644
--- a/api/controller/android.py
+++ b/api/controller/android.py
@@ -25,7 +25,16 @@
'package.mask', 'androidpin')
-@faux.all_empty
+def _MarkStableResponse(_input_proto, output_proto, _config):
+ """Add fake status to a successful response."""
+ output_proto.android_atom.category = 'category'
+ output_proto.android_atom.package_name = 'android-package-name'
+ output_proto.android_atom.version = '1.2'
+ output_proto.status = android_pb2.MARK_STABLE_STATUS_SUCCESS
+
+
+@faux.success(_MarkStableResponse)
+@faux.empty_error
@validate.require('tracking_branch', 'package_name', 'android_build_branch')
@validate.validation_complete
def MarkStable(input_proto, output_proto, _config):
@@ -76,6 +85,7 @@
output_proto.status = android_pb2.MARK_STABLE_STATUS_EARLY_EXIT
+# We don't use @faux.success for UnpinVersion because output_proto is unused.
@faux.all_empty
@validate.validation_complete
def UnpinVersion(_input_proto, _output_proto, _config):