/ / Не можна перевірити додаток django 1.7 - django, postgresql, psycopg2, django-tests

Неможливо протестувати додаток django 1.7 - django, postgresql, psycopg2, django-tests

я біжу Django==1.7 з psycopg2==2.5.4 і я не можу виконати жодних тестів.

Коли я намагаюся запустити будь-який з моїх тестів django (запустивши ./manage test <app>), Я отримую таку помилку:

Creating test database for alias "default"...
Got an error creating the test database: CREATE DATABASE cannot run inside a transaction block
...
Destroying old test database "default"...
Got an error recreating the test database: current transaction is aborted, commands ignored until end of transaction block

Налаштування бази даних дуже прості:

DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql_psycopg2",
"NAME": "mydb",
}
}

Користувач, яким я користуюся (система Ubuntu 14.04), має повні адміністративні привілеї для postgres і я можу успішно створити / скинути db

(env)user@host:~$ createdb test_mydb
(env)user@host:~$ dropdb test_mydb
(env)user@host:~$

Мої міграції моделі, здається, добре - я можу відмовитися від db, успішно запустити міграції, і мої функції веб-додатків прекрасно - я просто не можу запустити тести.

У мене є ще один проект django 1.7 на цій самій машині, використовуючи ту ж саму базову установку бази даних postgres, що працює як той самий користувач, і тести працюють нормально.

Будь-які ідеї, які можуть запобігати запуску тестів?

Відповіді:

0 для відповіді № 1

Це викликано моїм проектом, включаючи djorm-ext-pool app. Видалення djorm_pool з INSTALLED_APPS вирішує проблему.

Програма повинна запускати транзакцію до того, як тестовий бігун django створить тестову базу даних.