[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH][XM-TEST] Make the 04_restore test more comprehensive


  • To: Xen Developers <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Dan Smith <danms@xxxxxxxxxx>
  • Date: Wed, 09 Nov 2005 15:34:16 -0800
  • Delivery-date: Wed, 09 Nov 2005 23:34:23 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

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

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.