예제 #1
0
    def test_get_system_eeprom_info_from_db(self):
        return_values = {
            ('EEPROM_INFO|State', 'Initialized'):
            '1',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_PRODUCT_NAME)), 'Value'):
            'MSN3420',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_PART_NUMBER)), 'Value'):
            'MSN3420-CB2FO',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_MAC_BASE)), 'Value'):
            '1C:34:DA:1C:9F:00',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_SERIAL_NUMBER)), 'Value'):
            'MT2019X13878',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_VENDOR_EXT)), 'Num_vendor_ext'):
            '2',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_VENDOR_EXT)), 'Value_0'):
            'ext1',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_VENDOR_EXT)), 'Value_1'):
            'ext2',
            ('EEPROM_INFO|{}'.format(hex(Eeprom._TLV_CODE_CRC_32)), 'Value'):
            'CRC_VALUE',
        }

        def side_effect(key, field):
            return return_values.get((key, field))

        eeprom = Eeprom()
        eeprom._redis_hget = MagicMock(side_effect=side_effect)

        info = eeprom.get_system_eeprom_info()
        assert eeprom.get_product_name() == 'MSN3420'
        assert eeprom.get_part_number() == 'MSN3420-CB2FO'
        assert eeprom.get_base_mac() == '1C:34:DA:1C:9F:00'
        assert eeprom.get_serial_number() == 'MT2019X13878'
        assert info[hex(Eeprom._TLV_CODE_VENDOR_EXT)] == ['ext1', 'ext2']
        assert info[hex(Eeprom._TLV_CODE_CRC_32)] == 'CRC_VALUE'
예제 #2
0
 def test_get_system_eeprom_info_from_hardware(self):
     eeprom = Eeprom()
     eeprom.p = os.path.join(test_path, 'mock_eeprom_data')
     eeprom._redis_hget = MagicMock()
     info = eeprom.get_system_eeprom_info()
     assert eeprom.get_product_name() == 'MSN3800'
     assert eeprom.get_part_number() == 'MSN3800-CS2FO'
     assert eeprom.get_base_mac() == 'B8:59:9F:A9:34:00'
     assert eeprom.get_serial_number() == 'MT1937X00537'
     assert info[hex(Eeprom._TLV_CODE_CRC_32)] == '0x9EFF0119'