← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1599983] [NEW] Python 3.5 gate exposes issue in webob.response status code type

 

Public bug reported:

Unit test
keystone.tests.unit.test_wsgi.ApplicationTest.test_render_response_custom_status
fails with the following error:

        
ft274.18: keystone.tests.unit.test_wsgi.ApplicationTest.test_render_response_custom_status_StringException: pythonlogging:'': {{{
Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
}}}

Traceback (most recent call last):
  File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 271, in _status__set
    status_code = int(value.split()[0])
ValueError: invalid literal for int() with base 10: 'HTTPStatus.NOT_IMPLEMENTED'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/jenkins/workspace/gate-keystone-python35-db-nv/keystone/tests/unit/test_wsgi.py", line 110, in test_render_response_custom_status
    status=(http_client.NOT_IMPLEMENTED, 'Not Implemented'))
  File "/home/jenkins/workspace/gate-keystone-python35-db-nv/keystone/common/wsgi.py", line 770, in render_response
    headerlist=headers)
  File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 107, in __init__
    self.status = status
  File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 273, in _status__set
    raise ValueError('Invalid status code, integer required.')
ValueError: Invalid status code, integer required.


In some places we pass the status code as a str and others as an int


http://logs.openstack.org/42/339142/2/check/gate-keystone-python35-db-nv/847ed7d/testr_results.html.gz

** Affects: keystone
     Importance: Undecided
     Assignee: Eric Brown (ericwb)
         Status: In Progress

** Changed in: keystone
     Assignee: (unassigned) => Eric Brown (ericwb)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1599983

Title:
  Python 3.5 gate exposes issue in webob.response status code type

Status in OpenStack Identity (keystone):
  In Progress

Bug description:
  Unit test
  keystone.tests.unit.test_wsgi.ApplicationTest.test_render_response_custom_status
  fails with the following error:

          
  ft274.18: keystone.tests.unit.test_wsgi.ApplicationTest.test_render_response_custom_status_StringException: pythonlogging:'': {{{
  Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
  Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
  Adding cache-proxy 'oslo_cache.testing.CacheIsolatingProxy' to backend.
  }}}

  Traceback (most recent call last):
    File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 271, in _status__set
      status_code = int(value.split()[0])
  ValueError: invalid literal for int() with base 10: 'HTTPStatus.NOT_IMPLEMENTED'

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/home/jenkins/workspace/gate-keystone-python35-db-nv/keystone/tests/unit/test_wsgi.py", line 110, in test_render_response_custom_status
      status=(http_client.NOT_IMPLEMENTED, 'Not Implemented'))
    File "/home/jenkins/workspace/gate-keystone-python35-db-nv/keystone/common/wsgi.py", line 770, in render_response
      headerlist=headers)
    File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 107, in __init__
      self.status = status
    File "/home/jenkins/workspace/gate-keystone-python35-db-nv/.tox/py35/lib/python3.5/site-packages/webob/response.py", line 273, in _status__set
      raise ValueError('Invalid status code, integer required.')
  ValueError: Invalid status code, integer required.

  
  In some places we pass the status code as a str and others as an int

  
  http://logs.openstack.org/42/339142/2/check/gate-keystone-python35-db-nv/847ed7d/testr_results.html.gz

To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1599983/+subscriptions


Follow ups