blob: 104ee9ac6b92880b38be307437a9887d4e8f9bda [file] [log] [blame]
#!/usr/bin/env python3
# Copyright 2013 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Unit tests for cros_board_utils module."""
import unittest
from cros.factory.utils.cros_board_utils import BuildBoard
from cros.factory.utils.cros_board_utils import BuildBoardException
class BuildBoardTest(unittest.TestCase):
"""Unit tests for BuildBoard class."""
def runTest(self):
mickey = BuildBoard('mickey')
self.assertDictContainsSubset(
dict(base='veyron', variant='mickey', full_name='veyron_mickey',
short_name='mickey', gsutil_name='veyron-mickey'),
mickey.__dict__)
# "veyron_mickey" and "veyron-mickey" should be the same
for i in ['veyron_mickey', 'veyron-mickey']:
self.assertEqual(mickey.__dict__, BuildBoard(i).__dict__)
self.assertDictContainsSubset(
dict(base='hatch', variant=None, full_name='hatch',
short_name='hatch', gsutil_name='hatch'),
BuildBoard('hatch').__dict__)
self.assertRaisesRegex(
BuildBoardException, 'Unknown board', BuildBoard, 'notarealboard')
self.assertRaisesRegex(
BuildBoardException, 'Multiple board names', BuildBoard, 'he')
def testBoardArch(self):
self.assertEqual('arm', BuildBoard('beaglebone').arch)
self.assertEqual('arm', BuildBoard('nyan').arch)
self.assertEqual('arm', BuildBoard('mickey').arch)
self.assertEqual('amd64', BuildBoard('rambi').arch)
self.assertEqual('amd64', BuildBoard('hatch').arch)
if __name__ == '__main__':
unittest.main()