mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 10:40:03 +01:00
Added a test to verify that devices come and go from block-list
as they are block-attach'd and block-detach'd.
This commit is contained in:
1 parent
1443ca6d8c
commit
2f45e4aed1
2 files changed
+68
-1
No files matched your search
@@ -0,0 +1,66 @@
|
||||
#!/usr/bin/python
|
||||
|
||||
# Copyright (C) International Business Machines Corp., 2005
|
||||
# Author: Dan Smith <danms@us.ibm.com>
|
||||
|
||||
from XmTestLib import *
|
||||
|
||||
domain = XmTestDomain()
|
||||
|
||||
try:
|
||||
domain.start()
|
||||
except DomainError, e:
|
||||
FAIL(str(e))
|
||||
|
||||
try:
|
||||
console = XmConsole(domain.getName())
|
||||
except ConsoleError, e:
|
||||
FAIL(str(e))
|
||||
|
||||
s, o = traceCommand("xm block-list %s" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-list returned !0 when no devices attached")
|
||||
if o:
|
||||
FAIL("block-list without devices reported something!")
|
||||
|
||||
s, o = traceCommand("xm block-attach %s phy:/dev/ram0 hda1 w" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("Unable to attach /dev/ram0->hda1")
|
||||
|
||||
s, o = traceCommand("xm block-list %s" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-list failed")
|
||||
if not o.find("769"):
|
||||
FAIL("block-list didn't show the block device I just attached!")
|
||||
|
||||
s, o = traceCommand("xm block-attach %s phy:/dev/ram1 hda2 w" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("Unable to attach /dev/ram1->hda2")
|
||||
|
||||
s, o = traceCommand("xm block-list %s" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-list failed")
|
||||
if not o.find("770"):
|
||||
FAIL("block-list didn't show the other block device I just attached!")
|
||||
|
||||
s, o = traceCommand("xm block-detach %s 769" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-destroy of hda1 failed")
|
||||
|
||||
s, o = traceCommand("xm block-list %s" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-list failed after detaching a device")
|
||||
if o.find("769"):
|
||||
FAIL("hda1 still shown in block-list after detach!")
|
||||
if not o.find("770"):
|
||||
FAIL("hda2 not shown after detach of hda1!")
|
||||
|
||||
s, o = traceCommand("xm block-detach %s 770" % domain.getName())
|
||||
if s != 0:
|
||||
FAIL("block-list failed after detaching another device")
|
||||
if o.find("770"):
|
||||
FAIL("hda2 still shown in block-list after detach!")
|
||||
if o:
|
||||
FAIL("block-list still shows something after all devices detached!")
|
||||
|
||||
|
||||
@@ -5,7 +5,8 @@ TESTS = 01_block-list_pos.test \
|
||||
02_block-list_attachbd_pos.test \
|
||||
03_block-list_anotherbd_pos.test \
|
||||
04_block-list_nodb_pos.test \
|
||||
05_block-list_nonexist_neg.test
|
||||
05_block-list_nonexist_neg.test \
|
||||
06_block-list_checkremove_pos.test
|
||||
|
||||
XFAIL_TESTS =
|
||||
|
||||
|
||||