I am adding one more test case for vTPM migration. The new one does

local network migration without the 'live' parameter 3 times. The test
'04' that does live migration now tests local live migration 3 times.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
This commit is contained in:
kaf24@firebug.cl.cam.ac.uk committed 2006-05-11 13:43:09 +01:00
1 parent 4df9ae27a2
commit dd2e5172dc
3 files changed
+135 -29

No files matched your search

+33 -28
View File
@@ -6,6 +6,7 @@
# Positive Test: create domain with virtual TPM attached at build time,
# check list of pcrs; locally migrate the domain and
# check list of pcrs again
# This test does local live migration.
from XmTestLib import *
from vtpm_utils import *
@@ -50,40 +51,44 @@ domain.closeConsole()
old_domid = domid(domName)
try:
status, ouptut = traceCommand("xm migrate -l %s localhost" %
domName,
timeout=90)
except TimeoutError, e:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL(str(e))
loop = 0
while loop < 3:
try:
status, ouptut = traceCommand("xm migrate -l %s localhost" %
domName,
timeout=90)
except TimeoutError, e:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL(str(e))
if status != 0:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL("xm migrate did not succeed. External device migration activated?")
if status != 0:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL("xm migrate did not succeed. External device migration activated?")
domName = domain.getName()
new_domid = domid(domName)
domName = domain.getName()
new_domid = domid(domName)
if (old_domid == new_domid):
vtpm_cleanup(domName)
FAIL("xm migrate failed, domain id is still %s" % old_domid)
if (old_domid == new_domid):
vtpm_cleanup(domName)
FAIL("xm migrate failed, domain id is still %s (loop=%d)" %
(old_domid,loop))
try:
console = domain.getConsole()
except ConsoleError, e:
vtpm_cleanup(domName)
FAIL(str(e))
try:
console = domain.getConsole()
except ConsoleError, e:
vtpm_cleanup(domName)
FAIL(str(e))
try:
run = console.runCmd("cat /sys/devices/platform/tpm_vtpm/pcrs")
except ConsoleError, e:
saveLog(console.getHistory())
vtpm_cleanup(domName)
FAIL(str(e))
try:
run = console.runCmd("cat /sys/devices/platform/tpm_vtpm/pcrs")
except ConsoleError, e:
saveLog(console.getHistory())
vtpm_cleanup(domName)
FAIL(str(e))
loop += 1
domain.closeConsole()
@@ -0,0 +1,100 @@
#!/usr/bin/python
# Copyright (C) International Business Machines Corp., 2006
# Author: Stefan Berger <stefanb@us.ibm.com>
# Positive Test: create domain with virtual TPM attached at build time,
# check list of pcrs; locally migrate the domain and
# check list of pcrs again
# This test does local (non-live) migration.
from XmTestLib import *
from vtpm_utils import *
import commands
import os
import os.path
config = {"vtpm":"instance=1,backend=0"}
domain = XmTestDomain(extraConfig=config)
consoleHistory = ""
try:
console = domain.start()
except DomainError, e:
if verbose:
print e.extra
vtpm_cleanup(domain.getName())
FAIL("Unable to create domain")
domName = domain.getName()
try:
console.sendInput("input")
except ConsoleError, e:
saveLog(console.getHistory())
vtpm_cleanup(domName)
FAIL(str(e))
try:
run = console.runCmd("cat /sys/devices/platform/tpm_vtpm/pcrs")
except ConsoleError, e:
saveLog(console.getHistory())
vtpm_cleanup(domName)
FAIL(str(e))
if re.search("No such file",run["output"]):
vtpm_cleanup(domName)
FAIL("TPM frontend support not compiled into (domU?) kernel")
consoleHistory = console.getHistory()
domain.closeConsole()
old_domid = domid(domName)
loop = 0
while loop < 3:
try:
status, ouptut = traceCommand("xm migrate %s localhost" %
domName,
timeout=90)
except TimeoutError, e:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL(str(e))
if status != 0:
saveLog(consoleHistory)
vtpm_cleanup(domName)
FAIL("xm migrate did not succeed. External device migration activated?")
domName = domain.getName()
new_domid = domid(domName)
if (old_domid == new_domid):
vtpm_cleanup(domName)
FAIL("xm migrate failed, domain id is still %s (loop=%d)" %
(old_domid,loop))
try:
console = domain.getConsole()
except ConsoleError, e:
vtpm_cleanup(domName)
FAIL(str(e))
try:
run = console.runCmd("cat /sys/devices/platform/tpm_vtpm/pcrs")
except ConsoleError, e:
saveLog(console.getHistory())
vtpm_cleanup(domName)
FAIL(str(e))
loop += 1
domain.closeConsole()
domain.stop()
vtpm_cleanup(domName)
if not re.search("PCR-00:",run["output"]):
FAIL("Virtual TPM is not working correctly on /dev/vtpm on backend side")
+2 -1
View File
@@ -3,7 +3,8 @@ SUBDIRS =
TESTS = 01_vtpm-list_pos.test \
02_vtpm-cat_pcrs.test \
03_vtpm-susp_res.test \
04_vtpm-loc_migr.test
04_vtpm-loc_migr.test \
05_vtpm-loc_migr.test
XFAIL_TESTS =
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.