1#!/usr/bin/env vpython3 2# Copyright 2022 The Chromium Authors 3# Use of this source code is governed by a BSD-style license that can be 4# found in the LICENSE file. 5"""File for testing deploy_to_fuchsia.py.""" 6 7import os 8import unittest 9import unittest.mock as mock 10 11import deploy_to_fuchsia 12 13 14class DeployToFuchsiaTest(unittest.TestCase): 15 """Unittests for deploy_to_fuchsia.py.""" 16 17 @mock.patch('deploy_to_fuchsia.read_package_paths', return_value=[]) 18 @mock.patch('deploy_to_fuchsia.publish_packages') 19 @mock.patch('deploy_to_fuchsia.install_symbols') 20 def test_main(self, mock_install, mock_publish, mock_read) -> None: 21 """Tests |main|.""" 22 23 test_package = 'test_package' 24 fuchsia_out_dir = 'out/fuchsia' 25 with mock.patch('sys.argv', [ 26 'deploy_to_fuchsia.py', test_package, '-C', 'out/chromium', 27 '--fuchsia-out-dir', fuchsia_out_dir 28 ]): 29 deploy_to_fuchsia.main() 30 self.assertEqual(mock_read.call_args_list[0][0][1], test_package) 31 self.assertEqual(mock_publish.call_args_list[0][0][1], 32 os.path.join(fuchsia_out_dir, 'amber-files')) 33 self.assertEqual(mock_install.call_args_list[0][0][1], 34 fuchsia_out_dir) 35 36 37if __name__ == '__main__': 38 unittest.main() 39