Make the 04_restore test verify that two block devices and two nics
are restored to a working state and that the nics retain their
configuration.
Signed-off-by: Dan Smith <danms@xxxxxxxxxx>
# HG changeset patch
# User danms@xxxxxxxxxx
# Node ID 92a39ddffeef4b8cdfd4f15e79be870b0fd263f6
# Parent 93070cc5e505a3570e2f2dacfcdf4a4275b288b7
Make the 04_restore test verify that two block devices and two nics are
restored to a working state and that the nics retain their configuration.
diff -r 93070cc5e505 -r 92a39ddffeef
tools/xm-test/tests/restore/04_restore_withdevices_pos.py
--- a/tools/xm-test/tests/restore/04_restore_withdevices_pos.py Wed Nov 9
21:40:45 2005
+++ b/tools/xm-test/tests/restore/04_restore_withdevices_pos.py Wed Nov 9
23:29:12 2005
@@ -5,13 +5,20 @@
from XmTestLib import *
-domain = XmTestDomain()
+import re
+
+domain = XmTestDomain(extraOpts={"nics":2})
domain.configAddDisk("phy:/dev/ram0", "hda1", "w")
+domain.configAddDisk("phy:/dev/ram1", "hdb2", "w")
s, o = traceCommand("mke2fs -q /dev/ram0")
if s != 0:
FAIL("Unable to mke2fs /dev/ram0 in dom0")
+
+s, o = traceCommand("mke2fs -q /dev/ram1")
+if s != 0:
+ FAIL("Unable to mke2fs /dev/ram1 in dom0")
try:
domain.start()
@@ -22,13 +29,38 @@
console = XmConsole(domain.getName())
console.sendInput("foo")
- run = console.runCmd("mount /dev/hda1 /mnt")
+ run = console.runCmd("mkdir /mnt/a /mnt/b")
+ if run["return"] != 0:
+ FAIL("Unable to mkdir /mnt/a /mnt/b")
+
+ run = console.runCmd("mount /dev/hda1 /mnt/a")
if run["return"] != 0:
FAIL("Unable to mount /dev/hda1")
- run = console.runCmd("echo bar > /mnt/foo")
+ run = console.runCmd("mount /dev/hdb2 /mnt/b")
if run["return"] != 0:
- FAIL("Unable to write to block device!")
+ FAIL("Unable to mount /dev/hdb2")
+
+ run = console.runCmd("echo hda1 > /mnt/a/foo")
+ if run["return"] != 0:
+ FAIL("Unable to write to block device hda1!")
+
+ run = console.runCmd("echo hdb2 > /mnt/b/foo")
+ if run["return"] != 0:
+ FAIL("Unable to write to block device hdb2!")
+
+ run = console.runCmd("ifconfig eth0 169.254.0.1 netmask 255.255.255.0")
+ if run["return"] != 0:
+ FAIL("Unable to configure DomU's eth0")
+
+ run = console.runCmd("ifconfig eth1 169.254.1.1 netmask 255.255.255.0")
+ if run["return"] != 0:
+ FAIL("Unable to configure DomU's eth1")
+
+ run = console.runCmd("ifconfig lo 127.0.0.1")
+ if run["return"] != 0:
+ FAIL("Unable to configure DomU's lo")
+
except ConsoleError, e:
FAIL(str(e))
@@ -63,9 +95,31 @@
if run["return"] != 0:
FAIL("ls failed on restored domain")
- run = console.runCmd("cat /mnt/foo | grep bar")
+ run = console.runCmd("cat /mnt/a/foo")
if run["return"] != 0:
- FAIL("Unable to read from block device")
+ FAIL("Unable to read from block device hda1")
+ if not re.search("hda1", run["output"]):
+ FAIL("Failed to read correct data from hda1")
+
+ run = console.runCmd("cat /mnt/b/foo")
+ if run["return"] != 0:
+ FAIL("Unable to read from block device hdb2")
+ if not re.search("hdb2", run["output"]):
+ FAIL("Failed to read correct data from hdb2")
+
+ run = console.runCmd("ifconfig")
+ if not re.search("eth0", run["output"]):
+ FAIL("DomU's eth0 disappeared")
+ if not re.search("169.254.0.1", run["output"]):
+ FAIL("DomU's eth0 lost its IP")
+ if not re.search("eth1", run["output"]):
+ FAIL("DomU's eth1 disappeared")
+ if not re.search("169.254.1.1", run["output"]):
+ FAIL("DomU's eth1 lost its IP")
+ if not re.search("Loopback", run["output"]):
+ FAIL("DomU's lo disappeared")
+ if not re.search("127.0.0.1", run["output"]):
+ FAIL("DomU's lo lost its IP")
except ConsoleError, e:
FAIL(str(e))
--
Dan Smith
IBM Linux Technology Center
Open Hypervisor Team
email: danms@xxxxxxxxxx
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|