1bbbd9b6eSWillian Rampazzo# Sanity check of query-cpu-* results 2bbbd9b6eSWillian Rampazzo# 3bbbd9b6eSWillian Rampazzo# Copyright (c) 2019 Red Hat, Inc. 4bbbd9b6eSWillian Rampazzo# 5bbbd9b6eSWillian Rampazzo# Author: 6bbbd9b6eSWillian Rampazzo# Eduardo Habkost <ehabkost@redhat.com> 7bbbd9b6eSWillian Rampazzo# 8bbbd9b6eSWillian Rampazzo# This work is licensed under the terms of the GNU GPL, version 2 or 9bbbd9b6eSWillian Rampazzo# later. See the COPYING file in the top-level directory. 10bbbd9b6eSWillian Rampazzo 112283b627SPhilippe Mathieu-Daudéfrom avocado_qemu import QemuSystemTest 12bbbd9b6eSWillian Rampazzo 132283b627SPhilippe Mathieu-Daudéclass QueryCPUModelExpansion(QemuSystemTest): 14bbbd9b6eSWillian Rampazzo """ 15bbbd9b6eSWillian Rampazzo Run query-cpu-model-expansion for each CPU model, and validate results 16bbbd9b6eSWillian Rampazzo """ 17bbbd9b6eSWillian Rampazzo 18bbbd9b6eSWillian Rampazzo def test(self): 19bbbd9b6eSWillian Rampazzo """ 20bbbd9b6eSWillian Rampazzo :avocado: tags=arch:x86_64 21bbbd9b6eSWillian Rampazzo :avocado: tags=machine:none 22bbbd9b6eSWillian Rampazzo """ 23bbbd9b6eSWillian Rampazzo self.vm.add_args('-S') 24bbbd9b6eSWillian Rampazzo self.vm.launch() 25bbbd9b6eSWillian Rampazzo 26684750abSVladimir Sementsov-Ogievskiy cpus = self.vm.cmd('query-cpu-definitions') 27bbbd9b6eSWillian Rampazzo for c in cpus: 28bbbd9b6eSWillian Rampazzo self.log.info("Checking CPU: %s", c) 29bbbd9b6eSWillian Rampazzo self.assertNotIn('', c['unavailable-features'], c['name']) 30bbbd9b6eSWillian Rampazzo 31bbbd9b6eSWillian Rampazzo for c in cpus: 32bbbd9b6eSWillian Rampazzo model = {'name': c['name']} 33684750abSVladimir Sementsov-Ogievskiy e = self.vm.cmd('query-cpu-model-expansion', model=model, 34684750abSVladimir Sementsov-Ogievskiy type='full') 35861f724dSThomas Huth self.assertEqual(e['model']['name'], c['name']) 36