[Libvirt-cim] [PATCH] [TEST] Fix potiential false positive with HostSystem 01

Guo Lian Yun yunguol at cn.ibm.com
Tue Jul 15 01:45:46 UTC 2008


libvirt-cim-bounces at redhat.com wrote on 2008-07-14 23:14:05:

> # HG changeset patch
> # User Kaitlin Rupert <karupert at us.ibm.com>
> # Date 1216048393 25200
> # Node ID b5d2f6621f5731e5a6508cdd6e7b82bfba0ff9df
> # Parent  463274d67d8f35ac562c5665e561ab970ddc55c1
> [TEST] Fix potiential false positive with HostSystem 01.
> 
> This test doesn't verify that exactly one instances was returned 
> from the EnumerateInstances() call.
> 
> Also, if the EnumerateInstance() call doesn't return any instances, 
> then the test falls through the loop and returns PASS.
> 
> Signed-off-by: Kaitlin Rupert <karupert at us.ibm.com>
> 
> diff -r 463274d67d8f -r b5d2f6621f57 suites/libvirt-
> cim/cimtest/HostSystem/01_enum.py
> --- a/suites/libvirt-cim/cimtest/HostSystem/01_enum.py   Fri Jul 11 
> 13:04:59 2008 -0700
> +++ b/suites/libvirt-cim/cimtest/HostSystem/01_enum.py   Mon Jul 14 
> 08:13:13 2008 -0700
> @@ -26,13 +26,11 @@
>  # and verifies the hostname returned by the provider
> 
>  import sys
> -from CimTest.Globals import do_main
>  from XenKvmLib import hostsystem
>  from XenKvmLib.classes import get_typed_class
>  from VirtLib import live
>  from VirtLib import utils
> -from CimTest import Globals
> -from CimTest.Globals import logger
> +from CimTest.Globals import logger, CIM_ERROR_ENUMERATE, do_main
>  from CimTest.ReturnCodes import PASS, FAIL
> 
>  SUPPORTED_TYPES = ['Xen', 'KVM', 'XenFV', 'LXC']
> @@ -40,22 +38,29 @@
>  @do_main(SUPPORTED_TYPES)
>  def main():
>      options = main.options
> -    status = PASS
>      host = live.hostname(options.ip) 
> 
> +    status = FAIL
>      try:
>          hs = hostsystem.enumerate(options.ip, options.virt)
>          name = get_typed_class(options.virt, 'HostSystem')
> 
> -        for system in hs:
> -            if system.CreationClassName != name and system.Name != 
host:
> -                logger.error("%s Enumerate Instance error" % name)
> -                status = FAIL
> -            else:
> -                logger.info("%s is %s" % (name, host))
> +        if len(hs) != 1:
> +            logger.error("Expected 1 %s instance returned" % name)
> +            return FAIL
> + 
> +        system = hs[0]
> 
> -    except BaseException:
> -        logger.error(Globals.CIM_ERROR_ENUMERATE % 
hostsystem.CIM_System)
> +        if system.CreationClassName != name and system.Name != host:
 
           I think either one fails, we should report error. Maybe we can 
change it to below:
 
           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
> 
>      return status
> 
> _______________________________________________
> Libvirt-cim mailing list
> Libvirt-cim at redhat.com
> https://www.redhat.com/mailman/listinfo/libvirt-cim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvirt-cim/attachments/20080715/74ed198f/attachment.htm>


More information about the Libvirt-cim mailing list