Search code examples
djangodjango-southdjango-testingdjango-syncdb

Testing Django apps that use South migrations


I'm trying to create some Functional tests for a Django app that uses South migrations.
Eventually, I will also be creating Twill tests.

When I try to run the existing tests, the test database is not created successfully because of a problem with the South migrations. ( Fails @ 7th of 58 migrations )

It would seem that for the purpose of testing, it's better to build the test database from the Django models, like a syncdb would, than from South.

How do I set up the Django test suite to build the test database from the current model vs. trying to use South?


Solution

  • The South setting SOUTH_TESTS_MIGRATE controls this behaviour.

    Add this line to your settings.py file:

    SOUTH_TESTS_MIGRATE = False