api/controller: Convert manual BuildTarget instantiations
There are controller_util functions to construct BuildTargets from
the protobuf messages so we can have a single place to address changes
to the protobuf message. Convert all the BuildTarget instantiations
from manual constructions to calls to the util function.
BUG=chromium:1060351
TEST=run_tests, cq
Change-Id: I60c6720cf7bbc60f122f2fa1e2e81ab13368193f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/2096818
Reviewed-by: Michael Mortensen <mmortensen@google.com>
Commit-Queue: Alex Klein <saklein@chromium.org>
Tested-by: Alex Klein <saklein@chromium.org>
diff --git a/api/controller/controller_util_unittest.py b/api/controller/controller_util_unittest.py
index 4640a71..22b207f 100644
--- a/api/controller/controller_util_unittest.py
+++ b/api/controller/controller_util_unittest.py
@@ -11,10 +11,11 @@
from chromite.api.controller import controller_util
from chromite.api.gen.chromite.api import build_api_test_pb2
+from chromite.api.gen.chromite.api import sysroot_pb2
from chromite.api.gen.chromiumos import common_pb2
from chromite.lib import cros_test_lib
from chromite.lib import portage_util
-from chromite.lib.build_target_lib import BuildTarget
+from chromite.lib import build_target_lib
from chromite.lib.chroot_lib import Chroot
@@ -59,15 +60,29 @@
"""Test successful handling case."""
name = 'board'
build_target_message = common_pb2.BuildTarget(name=name)
- expected = BuildTarget(name)
+ expected = build_target_lib.BuildTarget(name)
result = controller_util.ParseBuildTarget(build_target_message)
self.assertEqual(expected, result)
+ def testParseProfile(self):
+ """Test the parsing of a profile."""
+ name = 'build-target-name'
+ profile = 'profile'
+ build_target_msg = common_pb2.BuildTarget(name=name)
+ profile_msg = sysroot_pb2.Profile(name=profile)
+
+ expected = build_target_lib.BuildTarget(name, profile=profile)
+ result = controller_util.ParseBuildTarget(
+ build_target_msg, profile_message=profile_msg)
+
+ self.assertEqual(expected, result)
+
+
def testWrongMessage(self):
"""Test invalid message type given."""
with self.assertRaises(AssertionError):
- controller_util.ParseBuildTarget(common_pb2.Chroot())
+ controller_util.ParseBuildTarget(build_api_test_pb2.TestRequestMessage())
class ParseBuildTargetsTest(cros_test_lib.TestCase):
@@ -82,7 +97,8 @@
result = controller_util.ParseBuildTargets(message.build_targets)
- self.assertCountEqual([BuildTarget(name) for name in names], result)
+ expected = [build_target_lib.BuildTarget(name) for name in names]
+ self.assertCountEqual(expected, result)
def testWrongMessage(self):
"""Wrong message type handling."""