#706: Unable to import tests.env module in python 2.6 - after r1536964 ---------------------+--------------- Reporter: olemis | Owner: Type: defect | Status: new Priority: major | Version: Resolution: | ---------------------+--------------- After the unification of `unittest` imports made in r1536964 it is impossible to import in python 2.6 the module `tests.env` since the statement `from unittest.case import _AssertRaisesContext` will fail.
{{{#!sh $ python setup.py test -m tests.env running test running egg_info writing requirements to BloodhoundTheme.egg-info/requires.txt writing BloodhoundTheme.egg-info/PKG-INFO writing top-level names to BloodhoundTheme.egg-info/top_level.txt writing dependency_links to BloodhoundTheme.egg-info/dependency_links.txt writing entry points to BloodhoundTheme.egg-info/entry_points.txt writing requirements to BloodhoundTheme.egg-info/requires.txt writing BloodhoundTheme.egg-info/PKG-INFO writing top-level names to BloodhoundTheme.egg-info/top_level.txt writing dependency_links to BloodhoundTheme.egg-info/dependency_links.txt writing entry points to BloodhoundTheme.egg-info/entry_points.txt reading manifest file 'BloodhoundTheme.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no directories found matching 'bhtheme/htdocs/images' writing manifest file 'BloodhoundTheme.egg-info/SOURCES.txt' running build_ext Traceback (most recent call last): File "setup.py", line 64, in <module> **extra File "/usr/lib/python2.6/distutils/core.py", line 152, in setup dist.run_commands() File "/usr/lib/python2.6/distutils/dist.py", line 975, in run_commands self.run_command(cmd) File "/usr/lib/python2.6/distutils/dist.py", line 995, in run_command cmd_obj.run() File "build/bdist.linux-x86_64/egg/setuptools/command/test.py", line 121, in run File "build/bdist.linux-x86_64/egg/setuptools/command/test.py", line 101, in with_project_on_sys_path File "build/bdist.linux-x86_64/egg/setuptools/command/test.py", line 135, in run_tests File "/usr/lib/python2.6/unittest.py", line 816, in __init__ self.parseArgs(argv) File "/usr/lib/python2.6/unittest.py", line 843, in parseArgs self.createTests() File "/usr/lib/python2.6/unittest.py", line 849, in createTests self.module) File "/usr/lib/python2.6/unittest.py", line 613, in loadTestsFromNames suites = [self.loadTestsFromName(name, module) for name in names] File "/usr/lib/python2.6/unittest.py", line 584, in loadTestsFromName parent, obj = obj, getattr(obj, part) AttributeError: 'module' object has no attribute 'env' $ python Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41) [GCC 4.4.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import bhrelations.tests Traceback (most recent call last): File "<stdin>", line 1, in <module> File "bhrelations/tests/__init__.py", line 28, in <module> from bhrelations.tests import api, notification, search, validation, web_ui File "bhrelations/tests/api.py", line 26, in <module> from bhrelations.tests.base import BaseRelationsTestCase File "bhrelations/tests/base.py", line 19, in <module> from tests.env import MultiproductTestCase File "/path/to/bloodhound/bloodhound_multiproduct/tests/env.py", line 29, in <module> from unittest.case import _AssertRaisesContext ImportError: No module named case >>> }}} In version 2.6 `unittest` is still a single .py file and thereby there's no such module `unittest.case` . The correct name would be `unittest2.case` instead. -- Ticket URL: <https://issues.apache.org/bloodhound/ticket/706> Apache Bloodhound <https://issues.apache.org/bloodhound/> The Apache Bloodhound issue tracker