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