Skip to content

Commit

Permalink
Acceptance test x86_cpu_model_versions: use default vm
Browse files Browse the repository at this point in the history
The default vm provided by the test, available as self.vm, serves the
same purpose of the one obtained by self.get_vm(), but saves a line
and matches the style of other tests.

Signed-off-by: Cleber Rosa <crosa@redhat.com>
Message-Id: <20190924194501.9303-2-crosa@redhat.com>
Reviewed-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Cleber Rosa <crosa@redhat.com>
  • Loading branch information
clebergnu committed Dec 16, 2019
1 parent c80c6be commit 3e9c181
Showing 1 changed file with 46 additions and 54 deletions.
100 changes: 46 additions & 54 deletions tests/acceptance/x86_cpu_model_versions.py
Expand Up @@ -25,10 +25,6 @@
import avocado_qemu
import re

def get_cpu_prop(vm, prop):
cpu_path = vm.command('query-cpus')[0].get('qom_path')
return vm.command('qom-get', path=cpu_path, property=prop)

class X86CPUModelAliases(avocado_qemu.Test):
"""
Validation of PC CPU model versions and CPU model aliases
Expand Down Expand Up @@ -241,78 +237,74 @@ class CascadelakeArchCapabilities(avocado_qemu.Test):
:avocado: tags=arch:x86_64
"""
def get_cpu_prop(self, prop):
cpu_path = self.vm.command('query-cpus')[0].get('qom_path')
return self.vm.command('qom-get', path=cpu_path, property=prop)

def test_4_1(self):
# machine-type only:
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.1')
vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off')
vm.launch()
self.assertFalse(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.1')
self.vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off')
self.vm.launch()
self.assertFalse(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.1 + Cascadelake-Server should not have arch-capabilities')

def test_4_0(self):
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.0')
vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off')
vm.launch()
self.assertFalse(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.0')
self.vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off')
self.vm.launch()
self.assertFalse(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server should not have arch-capabilities')

def test_set_4_0(self):
# command line must override machine-type if CPU model is not versioned:
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.0')
vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off,+arch-capabilities')
vm.launch()
self.assertTrue(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.0')
self.vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off,+arch-capabilities')
self.vm.launch()
self.assertTrue(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server,+arch-capabilities should have arch-capabilities')

def test_unset_4_1(self):
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.1')
vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off,-arch-capabilities')
vm.launch()
self.assertFalse(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.1')
self.vm.add_args('-cpu', 'Cascadelake-Server,x-force-features=on,check=off,enforce=off,-arch-capabilities')
self.vm.launch()
self.assertFalse(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.1 + Cascadelake-Server,-arch-capabilities should not have arch-capabilities')

def test_v1_4_0(self):
# versioned CPU model overrides machine-type:
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.0')
vm.add_args('-cpu', 'Cascadelake-Server-v1,x-force-features=on,check=off,enforce=off')
vm.launch()
self.assertFalse(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.0')
self.vm.add_args('-cpu', 'Cascadelake-Server-v1,x-force-features=on,check=off,enforce=off')
self.vm.launch()
self.assertFalse(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server-v1 should not have arch-capabilities')

def test_v2_4_0(self):
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.0')
vm.add_args('-cpu', 'Cascadelake-Server-v2,x-force-features=on,check=off,enforce=off')
vm.launch()
self.assertTrue(get_cpu_prop(vm, 'arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server-v2 should have arch-capabilities')
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.0')
self.vm.add_args('-cpu', 'Cascadelake-Server-v2,x-force-features=on,check=off,enforce=off')
self.vm.launch()
self.assertTrue(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server-v2 should have arch-capabilities')

def test_v1_set_4_0(self):
# command line must override machine-type and versioned CPU model:
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.0')
vm.add_args('-cpu', 'Cascadelake-Server-v1,x-force-features=on,check=off,enforce=off,+arch-capabilities')
vm.launch()
self.assertTrue(get_cpu_prop(vm, 'arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server-v1,+arch-capabilities should have arch-capabilities')
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.0')
self.vm.add_args('-cpu', 'Cascadelake-Server-v1,x-force-features=on,check=off,enforce=off,+arch-capabilities')
self.vm.launch()
self.assertTrue(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.0 + Cascadelake-Server-v1,+arch-capabilities should have arch-capabilities')

def test_v2_unset_4_1(self):
vm = self.get_vm()
vm.add_args('-S')
vm.set_machine('pc-i440fx-4.1')
vm.add_args('-cpu', 'Cascadelake-Server-v2,x-force-features=on,check=off,enforce=off,-arch-capabilities')
vm.launch()
self.assertFalse(get_cpu_prop(vm, 'arch-capabilities'),
self.vm.add_args('-S')
self.vm.set_machine('pc-i440fx-4.1')
self.vm.add_args('-cpu', 'Cascadelake-Server-v2,x-force-features=on,check=off,enforce=off,-arch-capabilities')
self.vm.launch()
self.assertFalse(self.get_cpu_prop('arch-capabilities'),
'pc-i440fx-4.1 + Cascadelake-Server-v2,-arch-capabilities should not have arch-capabilities')

0 comments on commit 3e9c181

Please sign in to comment.