Unit tests fail on Python 2.6

Bug #834772 reported by Lorin Hochstein
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Fix Released
Undecided
William Wolf

Bug Description

Unit tests now fail when run on Python 2.6.x because of the use of unittest.assertIn, which was added in Python 2.7

OS version: Ubuntu 10.04 (Lucid)
Python version: 2.6.5
nova revision: 1499

(Tested under virtualenv)

======================================================================
ERROR: test_destroy_instance (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 240, in test_destroy_instance
    self.assertIn(instance_ref['name'],
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_get_ajax_console (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 324, in test_get_ajax_console
    self.assertIn('token', ajax_console)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_get_console_pool_info (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 344, in test_get_console_pool_info
    self.assertIn('address', console_pool)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_get_host_stats (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 448, in test_get_host_stats
    self._check_host_status_fields(host_status)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 425, in _check_host_status_fields
    self.assertIn('host_name-description', host_status)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_get_info (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 262, in test_get_info
    self.assertIn('state', info)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_get_vnc_console (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 334, in test_get_vnc_console
    self.assertIn('token', vnc_console)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_spawn (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 81, in test_spawn
    self.assertIn(instance_ref['name'], domains)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

======================================================================
ERROR: test_update_host_status (nova.tests.test_virt_drivers.FakeConnectionTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 443, in test_update_host_status
    self._check_host_status_fields(host_status)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 43, in wrapped_func
    return f(self, *args, **kwargs)
  File "/var/lib/hudson/jobs/nova-trunk/workspace/nova/tests/test_virt_drivers.py", line 425, in _check_host_status_fields
    self.assertIn('host_name-description', host_status)
AttributeError: 'FakeConnectionTestCase' object has no attribute 'assertIn'

Related branches

Changed in nova:
assignee: nobody → William Wolf (throughnothing)
Changed in nova:
status: New → In Progress
Revision history for this message
Chris Behrens (cbehrens) wrote :

I see the 2 implementations of this fix involve unittest2. I'm going ahead and merge propping this:

https://code.launchpad.net/~cbehrens/nova/assert-in-fixes/+merge/73208

which is a smaller change. I feel a switch to unittest2 should be a separate proposal, if we wish to do that.

I'll let people fight it out for what they want. No offense taken if my merge prop is not chosen. :)

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx)
Changed in nova:
milestone: none → diablo-rbp
Thierry Carrez (ttx)
Changed in nova:
milestone: diablo-rbp → 2011.3
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.