2024-08-30 16:38:06 +03:00
|
|
|
#!/usr/bin/env python3
|
|
|
|
#
|
2019-03-19 23:05:15 +03:00
|
|
|
# Sanity check of query-cpu-* results
|
|
|
|
#
|
|
|
|
# Copyright (c) 2019 Red Hat, Inc.
|
|
|
|
#
|
|
|
|
# Author:
|
|
|
|
# Eduardo Habkost <ehabkost@redhat.com>
|
|
|
|
#
|
|
|
|
# This work is licensed under the terms of the GNU GPL, version 2 or
|
|
|
|
# later. See the COPYING file in the top-level directory.
|
|
|
|
|
2024-08-30 16:38:06 +03:00
|
|
|
from qemu_test import QemuSystemTest
|
2019-03-19 23:05:15 +03:00
|
|
|
|
2021-09-27 19:14:33 +03:00
|
|
|
class QueryCPUModelExpansion(QemuSystemTest):
|
2019-03-19 23:05:15 +03:00
|
|
|
"""
|
|
|
|
Run query-cpu-model-expansion for each CPU model, and validate results
|
|
|
|
"""
|
|
|
|
|
|
|
|
def test(self):
|
2024-08-30 16:38:06 +03:00
|
|
|
self.set_machine('none')
|
2019-03-19 23:05:15 +03:00
|
|
|
self.vm.add_args('-S')
|
|
|
|
self.vm.launch()
|
|
|
|
|
2023-10-06 18:41:15 +03:00
|
|
|
cpus = self.vm.cmd('query-cpu-definitions')
|
2019-03-19 23:05:15 +03:00
|
|
|
for c in cpus:
|
2021-04-16 00:51:38 +03:00
|
|
|
self.log.info("Checking CPU: %s", c)
|
2019-03-19 23:05:15 +03:00
|
|
|
self.assertNotIn('', c['unavailable-features'], c['name'])
|
|
|
|
|
|
|
|
for c in cpus:
|
|
|
|
model = {'name': c['name']}
|
2023-10-06 18:41:15 +03:00
|
|
|
e = self.vm.cmd('query-cpu-model-expansion', model=model,
|
|
|
|
type='full')
|
2023-11-14 16:43:26 +03:00
|
|
|
self.assertEqual(e['model']['name'], c['name'])
|
2024-08-30 16:38:06 +03:00
|
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
QemuSystemTest.main()
|