blob: 12a0544d07b108c9dba78d7b1889c0cac47705a3 [file] [log] [blame]
Ram Chandrasekar75c5d482022-08-01 22:17:47 +00001# Copyright 2022 The ChromiumOS Authors.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5"""Unittests for strip_package.py"""
6import os
7
8from chromite.lib import build_target_lib
9from chromite.lib import cros_test_lib
10from chromite.lib import install_mask
11from chromite.scripts import strip_package
12
13
14class StripPackageTest(cros_test_lib.MockTestCase):
15 """Tests for strip_package."""
16
17 def setUp(self):
18 self.sysroot_path = '/build/testboard'
19 self.builder_mock = self.PatchObject(strip_package.builder,
20 'UpdateGmergeBinhost')
21 self.PatchObject(
22 build_target_lib,
23 'get_default_sysroot_path',
24 return_value=self.sysroot_path)
25
26 def testDefaultSysroot(self):
27 """Test the base case."""
28 strip_package.main(['--board=testboard', 'foo'])
29 self.builder_mock.assert_called_with(self.sysroot_path, ['foo'], False)
30
31 def testMultiplePkg(self):
32 """Test multiple package input."""
33 strip_package.main(['--board=testboard', 'foo', 'foo1'])
34 self.builder_mock.assert_called_with(self.sysroot_path, ['foo', 'foo1'],
35 False)
36
37 def testCustomSysroot(self):
38 """Test user given custom sysroot path."""
39 strip_package.main(['--sysroot=/build/sysroot', 'foo'])
40 self.builder_mock.assert_called_with('/build/sysroot', ['foo'], False)
41
42 def testInstallMask(self):
43 """Test install mask environment variable."""
44 strip_package.main(['--board=testboard', 'foo'])
45 self.assertEqual(
46 os.environ.get('DEFAULT_INSTALL_MASK'), '\n'.join(install_mask.DEFAULT))
47
48 def testDeepOption(self):
49 """Test Deep option."""
50 strip_package.main(['--board=testboard', '--deep', 'foo'])
51 self.builder_mock.assert_called_with(self.sysroot_path, ['foo'], True)