blob: b49fd54bd3802bb1a8cc2efb58eccb6f5579226a [file] [log] [blame]
Mike Frysingerf1ba7ad2022-09-12 05:42:57 -04001# Copyright 2018 The ChromiumOS Authors
Tudor Brindus3e03eba2018-07-18 11:27:13 -07002# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5"""Unit tests for cros_generate_update_payload."""
6
Brian Norris85e0fd22023-06-27 09:49:18 -07007from chromite.lib import chroot_lib
Tudor Brindus3e03eba2018-07-18 11:27:13 -07008from chromite.lib import cros_test_lib
Amin Hassani6bc73a12018-11-29 21:07:12 -08009from chromite.lib import partial_mock
Amin Hassani6bc73a12018-11-29 21:07:12 -080010from chromite.lib.paygen import paygen_payload_lib
Tudor Brindus3e03eba2018-07-18 11:27:13 -070011from chromite.scripts import cros_generate_update_payload
12
Mike Frysinger807d8282022-04-28 22:45:17 -040013
Greg Edelstona4c9b3b2020-01-07 17:51:13 -070014pytestmark = cros_test_lib.pytestmark_inside_only
15
Amin Hassani6bc73a12018-11-29 21:07:12 -080016
17class CrOSGenerateUpdatePayloadTest(cros_test_lib.MockTestCase):
Alex Klein1699fab2022-09-08 08:46:06 -060018 """Test correct arguments passed to delta_generator."""
Amin Hassani6bc73a12018-11-29 21:07:12 -080019
Alex Klein1699fab2022-09-08 08:46:06 -060020 def testGenerateUpdatePayload(self):
21 """Test correct arguments propagated to delta_generator call."""
Tudor Brindus3e03eba2018-07-18 11:27:13 -070022
Alex Klein1699fab2022-09-08 08:46:06 -060023 paygen_mock = self.PatchObject(
24 paygen_payload_lib, "GenerateUpdatePayload"
25 )
Amin Hassani6bc73a12018-11-29 21:07:12 -080026
Alex Klein1699fab2022-09-08 08:46:06 -060027 cros_generate_update_payload.main(
28 [
29 "--tgt-image",
30 "foo-tgt-image",
31 "--src-image",
32 "foo-src-image",
33 "--output",
34 "foo-output",
35 "--check",
36 "--minios",
37 "--private-key",
38 "foo-private-key",
39 "--work-dir",
40 "foo-work-dir",
41 ]
42 )
Tudor Brindus3e03eba2018-07-18 11:27:13 -070043
Alex Klein1699fab2022-09-08 08:46:06 -060044 paygen_mock.assert_called_once_with(
Brian Norris85e0fd22023-06-27 09:49:18 -070045 chroot_lib.Chroot(),
Alex Klein1699fab2022-09-08 08:46:06 -060046 partial_mock.HasString("foo-tgt-image"),
47 partial_mock.HasString("foo-output"),
48 src_image=partial_mock.HasString("foo-src-image"),
49 work_dir=partial_mock.HasString("foo-work-dir"),
50 private_key=partial_mock.HasString("foo-private-key"),
51 check=True,
52 minios=True,
53 )