Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1116828

Summary: Neutron html parser throws different errors for different test cases if environment has some issues like giving wrong credentials
Product: [Retired] Red Hat OpenStack Certification Program Reporter: Swati Goswami <swgoswam>
Component: rhosctsAssignee: Neeti Dahiya <ndahiya>
Status: CLOSED ERRATA QA Contact: Swati Goswami <swgoswam>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 5.0CC: ndahiya, rreddy
Target Milestone: RC   
Target Release: 5.0   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-07-14 13:35:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1117262, 1117273    
Bug Blocks: 1090410    

Description Swati Goswami 2014-07-07 12:12:21 UTC
Description of problem:
Neutron html parser throws different errors for negative test cases like
if network.ini file has wrong credentials for demo or admin user

Version-Release number of selected component (if applicable):
openstack-cts-5.0.rc4-1.el7ost

How reproducible:


Steps to Reproduce:
1.In network.ini file put wrong password for admin or demo
2.Run rhoscts -n


Actual results:
ERROR: test_bulk_subnet (ctslogparser.test_subnet.TestSubnets)
Test creating regular user subnets in bulk
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_neutron_base.py", line 58, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_subnet.py", line 141, in test_bulk_subnet
    self._test_bulk_subnet(resp_v4, resp_v6)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_subnet.py", line 114, in _test_bulk_subnet
    for i in range(len(resp_v4['subnets']))]
KeyError: 'subnets'
 
======================================================================
ERROR: test_create_network_flat (ctslogparser.test_provider_network.TestProviderNetworks)
Test flat provider network creation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 28, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 79, in test_create_network_flat
    [i]['RESP']['BODY'])
IndexError: list index out of range
 
======================================================================
ERROR: test_create_network_gre (ctslogparser.test_provider_network.TestProviderNetworks)
Test gre provider network creation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 28, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 109, in test_create_network_gre
    [i]['RESP']['BODY'])
IndexError: list index out of range
 
======================================================================
ERROR: test_create_network_local (ctslogparser.test_provider_network.TestProviderNetworks)
Test local provider network creation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 28, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 64, in test_create_network_local
    [2]['RESP']['BODY'])
IndexError: list index out of range
 
======================================================================
ERROR: test_create_network_vlan (ctslogparser.test_provider_network.TestProviderNetworks)
Test vlan provider network creation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 28, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_provider_network.py", line 94, in test_create_network_vlan
    [i]['RESP']['BODY'])
IndexError: list index out of range
 
======================================================================
ERROR: test_create_pool (ctslogparser.test_pool.TestPools)
Test Create regular user pool responses
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_neutron_base.py", line 58, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_pool.py", line 37, in test_create_pool
    [4]['RESP']['BODY'])
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 365, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 383, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
 
======================================================================
ERROR: test_update_pool (ctslogparser.test_pool.TestPools)
Test update regular user pool
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_neutron_base.py", line 58, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_pool.py", line 65, in test_update_pool
    [4]['RESP']['BODY'])
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 365, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 383, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
 
======================================================================
ERROR: test_create_member (ctslogparser.test_member.TestMembers)
Test regular user member creation
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_neutron_base.py", line 58, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_member.py", line 37, in test_create_member
    [5]['RESP']['BODY'])
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 365, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 383, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
 
======================================================================
ERROR: test_update_member (ctslogparser.test_member.TestMembers)
Test update regular user member
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_neutron_base.py", line 58, in checker
    func(self)
  File "/usr/lib/python2.7/site-packages/ctslogparser/test_member.py", line 58, in test_update_member
    [5]['RESP']['BODY'])
  File "/usr/lib64/python2.7/json/__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.7/json/decoder.py", line 365, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.7/json/decoder.py", line 383, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
 

Expected results:
It should throw FAIl with error

Additional info :
Please refer
https://partner-bugzilla.redhat.com/show_bug.cgi?id=1075720
https://partner-bugzilla.redhat.com/show_bug.cgi?id=1075721

Comment 2 Neeti Dahiya 2014-07-07 13:11:20 UTC
This is a known-issue.
In case the the user credentials provided under [ADMIN_USER] section of network.ini file are invalid i.e do not match the Username, tenant_name and password of the admin user created on the system-under-test, then the following tests will show status ERROR in the HTML report generated:

test_bulk_subnet
test_create_network_flat
test_create_network_gre
test_create_network_local
test_create_network_vlan
test_create_pool
test_update_pool
test_create_member
test_update_member
test_create_vip
test_update_vip

However, if the user credentials provided under [USER] section of network.ini file are invalid i.e do not match the Username, tenant_name and password of the regular user created on the system-under-test, then the following test will show status ERROR in the HTML report generated:
test_create_network_local

Review Process: 
Check the network.json file. The following Response should be present for the auth-token requests: 
{\"error\": {\"message\": \"The request you have made requires authentication.\", \"code\": 401, \"title\": \"Unauthorized\"}}.

Partner should be requested to run complete test suite again with the right credentials.

Comment 3 Neeti Dahiya 2014-07-09 12:34:36 UTC
Fix available in build openstack-cts-5.0.rc6-1.el7ost.rpm

Comment 7 errata-xmlrpc 2014-07-14 13:35:22 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHEA-2014-0875.html