id summary reporter owner description type status component version severity resolution keywords cc stage has_patch needs_docs needs_tests needs_better_patch easy ui_ux 15170 inspectdb test fails under MySQL MyISAM Russell Keith-Magee nobody "As of r15325, the inspectdb test fails under MySQL MyISAM. It passes under InnoDB. {{{ ====================================================================== FAIL: test_attribute_name_not_python_keyword (regressiontests.inspectdb.tests.InspectDBTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File ""/Users/rkm/projects/django/hg/tests/regressiontests/inspectdb/tests.py"", line 13, in test_attribute_name_not_python_keyword self.assertIn(""from_field = models.ForeignKey(InspectdbPeople)"", out.getvalue()) AssertionError: 'from_field = models.ForeignKey(InspectdbPeople)' not found in u""# This is an auto-generated Django model ... ---------------------------------------------------------------------- Ran 1 test in 0.188s FAILED (failures=1) }}} Note - I've truncated the output because it runs to thousands of characters on one line. The problem is that MySQL's introspection backend doesn't identify foreign keys -- it identifies them as integer fields. As a result, the test fails because the field 'from' is identified as 'from_id', which isn't a colliding name. Given that this is a limitation of MyISAM, we probably just need to skip the test -- which means we need a new live capability check in the features backend (can_introspect_foreign_key, or simliar). Unless, of course, someone can find a nifty way to fix the introspection." closed Testing framework 1.2 fixed blocker regression Accepted 0 0 0 0 0 0