xref: /openbmc/qemu/tests/avocado/cpu_queries.py (revision 90bb6d67)
1# Sanity check of query-cpu-* results
2#
3# Copyright (c) 2019 Red Hat, Inc.
4#
5# Author:
6#  Eduardo Habkost <ehabkost@redhat.com>
7#
8# This work is licensed under the terms of the GNU GPL, version 2 or
9# later.  See the COPYING file in the top-level directory.
10
11from avocado_qemu import QemuSystemTest
12
13class QueryCPUModelExpansion(QemuSystemTest):
14    """
15    Run query-cpu-model-expansion for each CPU model, and validate results
16    """
17
18    def test(self):
19        """
20        :avocado: tags=arch:x86_64
21        :avocado: tags=machine:none
22        """
23        self.vm.add_args('-S')
24        self.vm.launch()
25
26        cpus = self.vm.cmd('query-cpu-definitions')
27        for c in cpus:
28            self.log.info("Checking CPU: %s", c)
29            self.assertNotIn('', c['unavailable-features'], c['name'])
30
31        for c in cpus:
32            model = {'name': c['name']}
33            e = self.vm.cmd('query-cpu-model-expansion', model=model,
34                            type='full')
35            self.assertEqual(e['model']['name'], c['name'])
36