| #!/usr/bin/env python3 |
| # Copyright 2021 The ChromiumOS Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import unittest |
| |
| from cros.factory.test.pytests import wireless_charge |
| |
| |
| class WirelessChargeHelperUnitTest(unittest.TestCase): |
| |
| def testGetPortStateFromChargeState(self): |
| cases = [{ |
| 'name': 'test irrelevant input', |
| 'input': 'random_string', |
| 'expected': wireless_charge.PortState.Unknown, |
| }, { |
| 'name': 'test charge state is ENABLED', |
| 'input': wireless_charge.ChargeState.ENABLED, |
| 'expected': wireless_charge.PortState.Available, |
| }, { |
| 'name': 'test charge state is CHARGING', |
| 'input': wireless_charge.ChargeState.CHARGING, |
| 'expected': wireless_charge.PortState.Occupied, |
| }, { |
| 'name': 'test charge state is FULL', |
| 'input': wireless_charge.ChargeState.FULL, |
| 'expected': wireless_charge.PortState.Occupied, |
| }] |
| |
| for c in cases: |
| self.assertEqual( |
| wireless_charge.GetPortStateFromChargeState(c['input']), |
| c['expected'], msg=f'test failed at {c["name"]}') |
| |
| |
| if __name__ == '__main__': |
| unittest.main() |