[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