firmware_unittest: add tests for all target endpoints
run existing unit tests for all firmware endpoints.
BUG=b:203462311
TEST=./run_tests ./api/controller/firmware_unittest.py
Change-Id: Ie6c068155916eca7f95834d86f436a045747b904
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/3237035
Tested-by: Azizur Rahman <azrahman@google.com>
Auto-Submit: Azizur Rahman <azrahman@google.com>
Commit-Queue: Azizur Rahman <azrahman@google.com>
Reviewed-by: Sean McAllister <smcallis@google.com>
diff --git a/api/controller/firmware.py b/api/controller/firmware.py
index 7347836..f959d38 100644
--- a/api/controller/firmware.py
+++ b/api/controller/firmware.py
@@ -22,19 +22,28 @@
from chromite.lib import cros_build_lib
from chromite.lib import osutils
+def get_fw_loc(fw_loc):
+ """Get firmware_builder.py location.
+
+ Args:
+ fw_loc (enum): FwLocation enum.
+
+ Returns:
+ (str): path to firmware_builder.py for valid fw_loc.
+ """
+ return {
+ common_pb2.PLATFORM_EC: 'src/platform/ec/',
+ common_pb2.PLATFORM_ZEPHYR: 'src/platform/ec/zephyr/',
+ common_pb2.PLATFORM_TI50: 'src/platform/ti50/common/',
+ common_pb2.PLATFORM_CR50: 'src/platform/cr50/'
+ }.get(fw_loc, '')
+
def _call_entry(fw_loc, metric_proto, subcmd, *args, **kwargs):
"""Calls into firmware_builder.py with the specified subcmd."""
- if fw_loc == common_pb2.PLATFORM_EC:
- fw_path = 'src/platform/ec/'
- elif fw_loc == common_pb2.PLATFORM_ZEPHYR:
- fw_path = 'src/platform/ec/zephyr/'
- elif fw_loc == common_pb2.PLATFORM_TI50:
- fw_path = 'src/platform/ti50/common/'
- elif fw_loc == common_pb2.PLATFORM_CR50:
- fw_path = 'src/platform/cr50/'
- else:
+ fw_path = get_fw_loc(fw_loc)
+ if not fw_path:
cros_build_lib.Die(f'Unknown firmware location {fw_loc}.')
entry_point = os.path.join(constants.SOURCE_ROOT, fw_path,