<br><tt><font size=2>libvirt-cim-bounces@redhat.com wrote on 2008-12-12
08:20:49:<br>
<br>
> # HG changeset patch<br>
> # User Kaitlin Rupert <karupert@us.ibm.com><br>
> # Date 1229040425 28800<br>
> # Node ID 3bb307b122797cae2b3d3bb7c37f81fb8a50e0f9<br>
> # Parent  5657d8fc247e73e143e7ce82ee2de5aecd7e6d6d<br>
> [TEST] Remove try_getinstance() from VSMSD - 02_vsmsd_gi_errs.py<br>
> <br>
> try_getinstance() is no longer needed - this function can be implemented
using<br>
> functions from enumclass.py.  Plus, a conn needs to be passed
to thefunction,<br>
> which is poor function design.<br>
> <br>
> Removed the "invalid_instid_keyname" case - passing an invalid
keyname only<br>
> tests the CIMOM, it does not test the providers.<br>
> <br>
> Signed-off-by: Kaitlin Rupert <karupert@us.ibm.com><br>
> <br>
> diff -r 5657d8fc247e -r 3bb307b12279 suites/libvirt-<br>
> cim/cimtest/VirtualSystemMigrationSettingData/02_vsmsd_gi_errs.py<br>
> --- a/suites/libvirt-<br>
> cim/cimtest/VirtualSystemMigrationSettingData/02_vsmsd_gi_errs.py
  <br>
> Thu Dec 11 16:06:29 2008 -0800<br>
> +++ b/suites/libvirt-<br>
> cim/cimtest/VirtualSystemMigrationSettingData/02_vsmsd_gi_errs.py
  <br>
> Thu Dec 11 16:07:05 2008 -0800<br>
> @@ -23,69 +23,63 @@<br>
>  # --------------<br>
>  # This tc is used to verify if appropriate exceptions are <br>
>  # returned by Xen_VSMSD on giving invalid inputs.<br>
> -# 1) Test by giving invalid Invalid InstanceID Key Name<br>
> -# Input:<br>
> -# ------<br>
> -# wbemcli gi http://localhost:5988/root/virt:\<br>
> -# Xen_VirtualSystemMigrationSettingData.Wrong="MigrationSettingData"
-nl<br>
>  # <br>
> -# 2) Test by passing Invalid InstanceID Key Value<br>
> +# 1) Test by passing Invalid InstanceID Key Value<br>
>  # Input:<br>
>  # ------<br>
>  # wbemcli gi http://localhost:5988/root/virt:\<br>
>  # Xen_VirtualSystemMigrationSettingData.InstanceID="Wrong"
-nl<br>
> -# <br>
> -# Inboth the cases the following exception is verified.<br>
>  # <br>
>  # Output:<br>
>  # -------<br>
>  # error code  : CIM_ERR_NOT_FOUND <br>
>  # error desc  : "No such instance (InstanceID)"<br>
>  # <br>
> -#                  
                     
                Date: 06-03-2008<br>
> +<br>
>  import sys<br>
> -import pywbem<br>
> -from XenKvmLib import assoc<br>
> -from CimTest.Globals import logger, CIM_USER, CIM_PASS, CIM_NS<br>
> -from CimTest.ReturnCodes import PASS<br>
> -from XenKvmLib.common_util import try_getinstance<br>
> +from pywbem import CIM_ERR_NOT_FOUND, CIMError<br>
> +from pywbem.cim_obj import CIMInstanceName<br>
> +from CimTest.ReturnCodes import PASS, FAIL<br>
> +from CimTest.Globals import logger<br>
>  from XenKvmLib.const import do_main<br>
>  from XenKvmLib.classes import get_typed_class<br>
> +from XenKvmLib.enumclass import GetInstance, CIM_CimtestClass<br>
>  <br>
>  platform_sup = ['Xen', 'XenFV', 'KVM', 'LXC']<br>
>  <br>
> -expr_values = {<br>
> -                "invalid_instid"
:  { 'rc'   : pywbem.CIM_ERR_NOT_FOUND, \<br>
> -                    
                 'desc' :
'No such instance <br>
> (InstanceID)' }<br>
> -              }<br>
> -def verify_fields():<br>
> -    classname = get_typed_class(options.virt, <br>
> "VirtualSystemMigrationSettingData") <br>
> -    return try_getinstance(conn, classname, keys, field_name=field,
\<br>
> -                    
      <br>
> expr_values=expr_values['invalid_instid'], bug_no="")<br>
> -    <br>
> -<br>
>  @do_main(platform_sup)<br>
>  def main():<br>
> -    global options<br>
>      options = main.options<br>
> -    global conn<br>
> -    global keys<br>
> -    global field<br>
> -    conn = assoc.myWBEMConnection('http://%s' % options.ip,
<br>
> (CIM_USER, CIM_PASS), CIM_NS)<br>
>  <br>
> -    field = 'INVALID_Instid_KeyName'<br>
> -    keys = { field : "MigrationSettingData" }<br>
> -    status = verify_fields()<br>
> +    expr_values = {<br>
> +                   'rc'
  : CIM_ERR_NOT_FOUND,<br>
> +                   'desc'
: 'No such instance (InstanceID)'<br>
> +                  }<br>
> +<br>
> +    cn = get_typed_class(options.virt, 'VirtualSystemMigrationSettingData')<br>
> +<br>
> +    keys = { 'InstanceID' : 'INVALID_Instid_KeyValue' }<br>
> +<br>
> +    ref = CIMInstanceName(cn, keybindings=keys)<br>
> +<br>
> +    status = FAIL<br>
> +    try:<br>
> +        inst = CIM_CimtestClass(options.ip, ref)<br>
> +<br>
> +    except CIMError, (err_no, err_desc):<br>
> +        exp_rc    = expr_values['rc']<br>
> +        exp_desc  = expr_values['desc']<br>
> +<br>
> +        if err_no == exp_rc and err_desc.find(exp_desc)
>= 0:<br>
> +            logger.info("Got expected
exception: %s %s", exp_desc, exp_rc)<br>
> +            status = PASS<br>
> +        else:<br>
> +            logger.error("Unexpected
errno %s and desc %s", err_no,err_desc)<br>
> +            logger.error("Got
%s %s", err_desc, err_no)<br>
> +            status = FAIL<br>
> +<br>
>      if status != PASS:<br>
> -        logger.error("------ FAILED: to
check INVALID_Instid_KeyName.------")<br>
> -        return status <br>
> -<br>
> -    field = 'INVALID_Instid_KeyValue'<br>
> -    keys = { 'InstanceID' : field }<br>
> -    status = verify_fields()<br>
> -    if status != PASS:<br>
> -        logger.error("------ FAILED: to
check <br>
> INVALID_Instid_KeyValue.------")<br>
> -        return status <br>
> +        logger.error("------ FAILED: Invalid
InstanceID Key Value.------")</font></tt>
<br><tt><font size=2>       <br>
> It's better to return FAIL after logger.error above, otherwise, we
have to return </font></tt>
<br><tt><font size=2>  status instead of PASS below.</font></tt>
<br><tt><font size=2>  Others looks fine for me.</font></tt>
<br><tt><font size=2><br>
>      return PASS<br>
>  if __name__ == "__main__":<br>
> <br>
> _______________________________________________<br>
> Libvirt-cim mailing list<br>
> Libvirt-cim@redhat.com<br>
> https://www.redhat.com/mailman/listinfo/libvirt-cim<br>
</font></tt>