scripts: setup_board: add basic unittests
BUG=b:187785540
TEST=CQ passes
Change-Id: Ied32786f9a928729d4255680e78341fd0ed491fe
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/chromite/+/4831955
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Alex Klein <saklein@chromium.org>
Commit-Queue: Alex Klein <saklein@chromium.org>
Auto-Submit: Mike Frysinger <vapier@chromium.org>
Commit-Queue: Mike Frysinger <vapier@chromium.org>
diff --git a/scripts/setup_board_unittest.py b/scripts/setup_board_unittest.py
new file mode 100644
index 0000000..c1a62ce
--- /dev/null
+++ b/scripts/setup_board_unittest.py
@@ -0,0 +1,24 @@
+# Copyright 2023 The ChromiumOS Authors
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+"""Tests for setup_board."""
+
+from unittest import mock
+
+import pytest
+
+from chromite.scripts import setup_board
+
+
+@mock.patch("chromite.service.sysroot.SetupBoard", return_value=None)
+def test_main(_, tmp_path):
+ """Smoke test."""
+ # Missing --board fails.
+ with pytest.raises(SystemExit):
+ setup_board.main([])
+
+ # Point to an empty root just in case we try to touch something.
+ setup_board.main(
+ ["-b", "amd64-generic", "--board-root", str(tmp_path / "empty")]
+ )