Esempio n. 1
0
    def test_get_disk_io_counters_per_disk(self, io_counters_mock):
        Counters = collections.namedtuple('sdiskio', [
            'read_count', 'write_count', 'read_bytes', 'write_bytes',
            'read_time', 'write_time', 'busy_time', 'read_merged_count',
            'write_merged_count'
        ])

        disk_counters1 = Counters(read_count=0,
                                  write_count=1,
                                  read_bytes=2,
                                  write_bytes=3,
                                  read_time=4,
                                  write_time=5,
                                  busy_time=6,
                                  read_merged_count=7,
                                  write_merged_count=8)

        disk_counters2 = Counters(read_count=9,
                                  write_count=10,
                                  read_bytes=11,
                                  write_bytes=12,
                                  read_time=13,
                                  write_time=14,
                                  busy_time=15,
                                  read_merged_count=16,
                                  write_merged_count=17)

        counters_per_disk = {'sdb1': disk_counters2, 'sda1': disk_counters1}
        io_counters_mock.return_value = counters_per_disk

        hostinfo = HostInfo(MagicMock())

        disk_counter_per_disk = hostinfo.get_disk_io_counters_per_disk()

        # Assert for sdisk_sda1
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_read_count'], 0)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_write_count'], 1)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_read_bytes'], 2)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_write_bytes'], 3)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_read_time'], 4)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_write_time'], 5)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_busy_time'], 6)
        self.assertEqual(disk_counter_per_disk['sdisk_sda1_read_merged_count'],
                         7)
        self.assertEqual(
            disk_counter_per_disk['sdisk_sda1_write_merged_count'], 8)

        # Assert for sdb1

        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_read_count'], 9)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_write_count'], 10)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_read_bytes'], 11)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_write_bytes'], 12)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_read_time'], 13)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_write_time'], 14)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_busy_time'], 15)
        self.assertEqual(disk_counter_per_disk['sdisk_sdb1_read_merged_count'],
                         16)
        self.assertEqual(
            disk_counter_per_disk['sdisk_sdb1_write_merged_count'], 17)