diff --git a/proliantutils/hpssa/constants.py b/proliantutils/hpssa/constants.py index 2eadb46..28a1531 100644 --- a/proliantutils/hpssa/constants.py +++ b/proliantutils/hpssa/constants.py @@ -39,14 +39,16 @@ INTERFACE_TYPE_MAP = {'SCSI': INTERFACE_TYPE_SCSI, 'SATA': INTERFACE_TYPE_SATA, 'SATASSD': INTERFACE_TYPE_SATA, 'SASSSD': INTERFACE_TYPE_SAS, - 'Solid State SAS': INTERFACE_TYPE_SAS} + 'Solid State SAS': INTERFACE_TYPE_SAS, + 'Solid State SATA': INTERFACE_TYPE_SATA} DISK_TYPE_MAP = {'SCSI': DISK_TYPE_HDD, 'SAS': DISK_TYPE_HDD, 'SATA': DISK_TYPE_HDD, 'SATASSD': DISK_TYPE_SSD, 'SASSSD': DISK_TYPE_SSD, - 'Solid State SAS': DISK_TYPE_SSD} + 'Solid State SAS': DISK_TYPE_SSD, + 'Solid State SATA': DISK_TYPE_SSD} RAID_LEVEL_MIN_DISKS = {RAID_0: 1, RAID_1: 2, diff --git a/proliantutils/tests/hpssa/raid_constants.py b/proliantutils/tests/hpssa/raid_constants.py index d47baeb..7b079aa 100644 --- a/proliantutils/tests/hpssa/raid_constants.py +++ b/proliantutils/tests/hpssa/raid_constants.py @@ -261,6 +261,27 @@ Smart Array P822 in Slot 2 Carrier Application Version: 11 Carrier Bootloader Version: 6 + physicaldrive 6I:1:8 + Port: 6I + Box: 1 + Bay: 7 + Status: OK + Drive Type: Unassigned Drive + Interface Type: Solid State SATA + Size: 200 GB + Native Block Size: 512 + Rotational Speed: 15000 + Firmware Revision: HPD6 + Serial Number: 6SL7G54Q0000N4180W34 + Model: HP EF0600FARNA + Current Temperature (C): 31 + Maximum Temperature (C): 39 + PHY Count: 2 + PHY Transfer Rate: 6.0Gbps, Unknown + Drive Authentication Status: OK + Carrier Application Version: 11 + Carrier Bootloader Version: 6 + SEP (Vendor ID PMCSIERA, Model SRCv24x6G) 380 Device Number: 380 diff --git a/proliantutils/tests/hpssa/test_objects.py b/proliantutils/tests/hpssa/test_objects.py index 0b1a2d8..fbfffc8 100644 --- a/proliantutils/tests/hpssa/test_objects.py +++ b/proliantutils/tests/hpssa/test_objects.py @@ -496,19 +496,25 @@ class PhysicalDriveTest(testtools.TestCase): get_all_details_mock.return_value = raid_constants.HPSSA_DRIVES_SSD server = objects.Server() - d = server.controllers[0].unassigned_physical_drives[0] - d = [x for x in server.controllers[0].unassigned_physical_drives - if x.id == '6I:1:7'] - ret = d[0].get_physical_drive_dict() - self.assertEqual(200, ret['size_gb']) + d = [x for x in server.controllers[0].unassigned_physical_drives] + drives = sorted((x for x in d), + key=lambda x: x.get_physical_drive_dict()['id']) + ret_sas = drives[0].get_physical_drive_dict() + ret_sata = drives[1].get_physical_drive_dict() + + self.assertEqual(200, ret_sas['size_gb']) self.assertEqual('Smart Array P822 in Slot 2', - ret['controller']) - self.assertEqual('6I:1:7', ret['id']) - self.assertEqual('ssd', ret['disk_type']) - self.assertEqual('sas', ret['interface_type']) - self.assertEqual('HP EF0600FARNA', ret['model']) - self.assertEqual('HPD6', ret['firmware']) - self.assertEqual('ready', ret['status']) + ret_sas['controller']) + self.assertEqual('6I:1:7', ret_sas['id']) + self.assertEqual('ssd', ret_sas['disk_type']) + self.assertEqual('sas', ret_sas['interface_type']) + self.assertEqual('HP EF0600FARNA', ret_sas['model']) + self.assertEqual('HPD6', ret_sas['firmware']) + self.assertEqual('ready', ret_sas['status']) + + self.assertEqual('6I:1:8', ret_sata['id']) + self.assertEqual('ssd', ret_sata['disk_type']) + self.assertEqual('sata', ret_sata['interface_type']) def test_get_physical_drive_dict_part_of_array(self, get_all_details_mock):