blob: 2c673c25ec01d3f9613d85f8063842d3aa89550a [file] [log] [blame]
#!/usr/bin/python
# Copyright 2018 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.
"""The mock DUT class. """
import graphyte_common # pylint: disable=unused-import
from graphyte.dut import DUTBase
from graphyte.default_setting import logger
from graphyte.utils.graphyte_utils import MakeMockPassResult
from graphyte.utils import process_utils
class DUT(DUTBase):
name = 'Mock DUT Plugin'
def __init__(self, **kwargs):
super(DUT, self).__init__(**kwargs)
self.controllers = {
'WLAN': self.WlanController(self),
'BLUETOOTH': self.BluetoothController(self),
'802_15_4': self.ZigbeeController(self)}
def _Initialize(self):
logger.info('DUT Initialize')
def _Terminate(self):
logger.info('DUT Terminate')
def GetVersion(self):
logger.info('DUT GetVersion')
return process_utils.CheckOutput(['uname', '-a']).strip()
class WlanController(DUTBase.WlanControllerBase):
def _Initialize(self):
logger.info('DUT Wlan Initialize')
def _Terminate(self):
logger.info('DUT Wlan Terminate')
def _TxStart(self, component_name, center_freq,
power_level, standard, bandwidth, data_rate, chain_mask, nss,
long_preamble, **kwargs):
logger.info('DUT Wlan TxStart')
def _TxStop(self, **kwargs):
logger.info('DUT Wlan TxStop')
def _RxClearResult(self, component_name, center_freq,
power_level, standard, bandwidth, data_rate, chain_mask,
nss, long_preamble, rx_num_packets, **kwargs):
logger.info('DUT Wlan RxClearResult')
def _RxGetResult(self, result_limit, **kwargs):
logger.info('DUT Wlan RxGetResult')
return MakeMockPassResult(result_limit)
class BluetoothController(DUTBase.BluetoothControllerBase):
def _Initialize(self):
logger.info('DUT Bluetooth Initialize')
def _Terminate(self):
logger.info('DUT Bluetooth Terminate')
def _TxStart(self, component_name, center_freq,
power_level, packet_type, bit_pattern, **kwargs):
logger.info('DUT Bluetooth TxStart')
def _TxStop(self, **kwargs):
logger.info('DUT Bluetooth TxStop')
def _RxClearResult(self, component_name, center_freq,
power_level, packet_type, bit_pattern, **kwargs):
logger.info('DUT Bluetooth RxClearResult')
def _RxGetResult(self, result_limit, **kwargs):
logger.info('DUT Bluetooth RxGetResult')
return MakeMockPassResult(result_limit)
class ZigbeeController(DUTBase.ZigbeeControllerBase):
def _Initialize(self):
logger.info('DUT Zigbee Initialize')
def _Terminate(self):
logger.info('DUT Zigbee Terminate')
def _TxStart(self, component_name, center_freq,
power_level, **kwargs):
logger.info('DUT Zigbee TxStart')
def _TxStop(self, **kwargs):
logger.info('DUT Zigbee TxStop')
def _RxClearResult(self, component_name, center_freq,
power_level, rx_num_packets, **kwargs):
logger.info('DUT Zigbee RxClearResult')
def _RxGetResult(self, result_limit, **kwargs):
logger.info('DUT Zigbee RxGetResult')
return MakeMockPassResult(result_limit)