[Libvirt-cim] [PATCH] [TEST] #3 Fix HostSystem-01_enum.py to work with sblim base provider installed and without

yunguol at cn.ibm.com yunguol at cn.ibm.com
Thu Sep 25 03:22:41 UTC 2008


# HG changeset patch
# User Guolian Yun <yunguol at cn.ibm.com>
# Date 1222312954 25200
# Node ID 2321fefe8d19520613c3704ed511d8c3d43242e0
# Parent  375ae129b8e910fe42a5e4434b67ada5589bc72f
[TEST] #3 Fix HostSystem-01_enum.py to work with sblim base provider installed and without

Signed-off-by: Guolian Yun <yunguol at cn.ibm.com>

diff -r 375ae129b8e9 -r 2321fefe8d19 suites/libvirt-cim/cimtest/HostSystem/01_enum.py
--- a/suites/libvirt-cim/cimtest/HostSystem/01_enum.py	Tue Sep 23 04:45:04 2008 -0700
+++ b/suites/libvirt-cim/cimtest/HostSystem/01_enum.py	Wed Sep 24 20:22:34 2008 -0700
@@ -27,6 +27,7 @@
 
 import sys
 from XenKvmLib import enumclass
+from XenKvmLib.common_util import check_sblim
 from XenKvmLib.classes import get_typed_class
 from VirtLib import live
 from VirtLib import utils
@@ -43,27 +44,41 @@ def main():
    
     status = FAIL
     keys = ['Name', 'CreationClassName']
+    
+    ret, linux_cs = check_sblim(options.ip, options.virt)
     try:
         hs = enumclass.enumerate(options.ip, 'HostSystem', keys, options.virt)
-        name = get_typed_class(options.virt, 'HostSystem')
-        
-        if len(hs) != 1:
-            logger.error("Expected 1 %s instance returned" % name)
-            return FAIL
-   
-        system = hs[0]
-
-        if system.CreationClassName != name or system.Name != host:
-            logger.error("Exp %s, got %s" % (name, system.CreationClassName))
-            logger.error("Exp %s, got %s" % (host, system.Name))
-            status = FAIL
-        else:
-            logger.info("%s is %s" % (name, host))
-            status = PASS
-
     except Exception, details:
         logger.error("%s %s: %s" % (CIM_ERROR_ENUMERATE, name, details))
         status = FAIL
+    hostname = get_typed_class(options.virt, 'HostSystem')   
+ 
+    if ret == PASS and len(hs) == 0:
+        name = 'Linux_ComputerSystem'
+        system = linux_cs
+    if ret == FAIL and len(hs) == 1:
+        name = hostname
+        system = hs[0]
+    if system.CreationClassName != name or system.Name != host:
+        logger.error("Exp %s, got %s" % (name, system.CreationClassName))
+        logger.error("Exp %s, got %s" % (host, system.Name))
+        status = FAIL
+    else:
+        logger.info("%s is %s" % (name, host))
+        status = PASS
+
+    if ret == PASS and len(hs) == 1:
+        if linux_cs.CreationClassName != 'Linux_ComputerSystem' \
+           or linux_cs.Name != host \
+           or hs[0].CreationClassName != hostname\
+           or hs[0].Name != host:
+            logger.error("Exp Linux_ComputerSystem, got %s" % linux_cs.CreationClassName)
+            logger.error("Exp %s, got %s" % (host, linux_cs.Name))
+            logger.error("Exp %s, got %s" % (hostname, hs[0].CreationClassName))
+            logger.error("Exp %s, got %s" % (host, hs[0].Name))
+            status = FAIL
+        else:
+            status = PASS
 
     return status
 




More information about the Libvirt-cim mailing list