diff options
| author | Ramiro Morales <cramm0@gmail.com> | 2012-07-21 20:16:47 -0300 |
|---|---|---|
| committer | Ramiro Morales <cramm0@gmail.com> | 2012-07-21 20:16:47 -0300 |
| commit | ea667ee3aeed33bce1dd681d9c0ea42f9926db5a (patch) | |
| tree | ec95ad610f3988316a1c9c0d8d402e491f34b1c3 | |
| parent | 2b6644388f1a33f0b2eeb1c7a576fc04cfa72e0a (diff) | |
Made LiveServerTestCase to restore state on exit.
The piece of state is DB connections' allow_thread_sharing attribute
which gets munged test are run when in-memory SQLite databases.
Thanks Anssi for suggesting the possible root cause and Julien for
implementing the fix.
| -rw-r--r-- | django/test/testcases.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/django/test/testcases.py b/django/test/testcases.py index 95e751d384..0a0b029796 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -1138,4 +1138,11 @@ class LiveServerTestCase(TransactionTestCase): if hasattr(cls, 'server_thread'): # Terminate the live server's thread cls.server_thread.join() + + # Restore sqlite connections' non-sharability + for conn in connections.all(): + if (conn.settings_dict['ENGINE'] == 'django.db.backends.sqlite3' + and conn.settings_dict['NAME'] == ':memory:'): + conn.allow_thread_sharing = False + super(LiveServerTestCase, cls).tearDownClass() |
