﻿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
8542	model_formsets tests added in r8528 fail on MySQL	Karen Tracey <kmtracey@…>	nobody	"The model_formsets tests added in [8528] are failing on MySQL:

{{{

======================================================================
FAIL: Doctest: modeltests.model_formsets.models.__test__.API_TESTS
----------------------------------------------------------------------
Traceback (most recent call last):
  File ""/home/kmt/tmp/django/trunk/django/test/_doctest.py"", line 2180, in runTest
    raise self.failureException(self.format_failure(new.getvalue()))
AssertionError: Failed doctest test for modeltests.model_formsets.models.__test__.API_TESTS
  File ""/home/kmt/tmp/django/trunk/tests/modeltests/model_formsets/models.py"", line unknown line number, in API_TESTS

----------------------------------------------------------------------
File ""/home/kmt/tmp/django/trunk/tests/modeltests/model_formsets/models.py"", line ?, in modeltests.model_formsets.models.__test__.API_TESTS
Failed example:
    for form in formset.forms:
        print form.as_p()
Expected:
    <p><label for=""id_form-0-name"">Name:</label> <input id=""id_form-0-name"" type=""text"" name=""form-0-name"" value=""Ernest Hemingway"" maxlength=""100"" /></p>
    <p><label for=""id_form-0-write_speed"">Write speed:</label> <input type=""text"" name=""form-0-write_speed"" value=""10"" id=""id_form-0-write_speed"" /><input type=""hidden"" name=""form-0-author_ptr_id"" value=""4"" id=""id_form-0-author_ptr_id"" /></p>
    <p><label for=""id_form-1-name"">Name:</label> <input id=""id_form-1-name"" type=""text"" name=""form-1-name"" maxlength=""100"" /></p>
    <p><label for=""id_form-1-write_speed"">Write speed:</label> <input type=""text"" name=""form-1-write_speed"" id=""id_form-1-write_speed"" /><input type=""hidden"" name=""form-1-author_ptr_id"" id=""id_form-1-author_ptr_id"" /></p>
Got:
    <p><label for=""id_form-0-name"">Name:</label> <input id=""id_form-0-name"" type=""text"" name=""form-0-name"" value=""Ernest Hemingway"" maxlength=""100"" /></p>
    <p><label for=""id_form-0-write_speed"">Write speed:</label> <input type=""text"" name=""form-0-write_speed"" value=""10"" id=""id_form-0-write_speed"" /><input type=""hidden"" name=""form-0-author_ptr_id"" value=""5"" id=""id_form-0-author_ptr_id"" /></p>
    <p><label for=""id_form-1-name"">Name:</label> <input id=""id_form-1-name"" type=""text"" name=""form-1-name"" maxlength=""100"" /></p>
    <p><label for=""id_form-1-write_speed"">Write speed:</label> <input type=""text"" name=""form-1-write_speed"" id=""id_form-1-write_speed"" /><input type=""hidden"" name=""form-1-author_ptr_id"" id=""id_form-1-author_ptr_id"" /></p>
----------------------------------------------------------------------
File ""/home/kmt/tmp/django/trunk/tests/modeltests/model_formsets/models.py"", line ?, in modeltests.model_formsets.models.__test__.API_TESTS
Failed example:
    formset.save()
Exception raised:
    Traceback (most recent call last):
      File ""/home/kmt/tmp/django/trunk/django/test/_doctest.py"", line 1267, in __run
        compileflags, 1) in test.globs
      File ""<doctest modeltests.model_formsets.models.__test__.API_TESTS[64]>"", line 1, in <module>
        formset.save()
      File ""/home/kmt/tmp/django/trunk/django/forms/models.py"", line 280, in save
        return self.save_existing_objects(commit) + self.save_new_objects(commit)
      File ""/home/kmt/tmp/django/trunk/django/forms/models.py"", line 294, in save_existing_objects
        obj = existing_objects[form.cleaned_data[self.model._meta.pk.attname]]
    KeyError: 4


----------------------------------------------------------------------
Ran 1 test in 0.253s

FAILED (failures=1)

}}}

For the first one the difference I notice is ""value=4"" (expected) vs. ""value=5"" (got) on the 2nd line.  Probably the same problem causing the `KeyError: 4` in the 2nd case -- some PK ID is turning out to be 5 on MySQL whereas it comes up 4 on the other backends?  So the tests that look for value 4 and/or try to use that value are failing on MySQL? "		closed	Uncategorized	dev		fixed			Accepted	0	0	0	0	0	0
