Bug#754143: Fix the tests to not pollute the data directory
---
distro_tracker/core/tests/cleantestcase.py | 13 +++++++++++++
distro_tracker/vendor/debian/tests.py | 3 ++-
2 files changed, 15 insertions(+), 1 deletion(-)
create mode 100644 distro_tracker/core/tests/cleantestcase.py
diff --git a/distro_tracker/core/tests/cleantestcase.py b/distro_tracker/core/tests/cleantestcase.py
new file mode 100644
index 0000000..bef8906
--- /dev/null
+++ b/distro_tracker/core/tests/cleantestcase.py
@@ -0,0 +1,13 @@
+import shutil
+import tempfile
+from django.test import TestCase as DjangoTestCase
+from django.conf import settings
+
+class TestCase(DjangoTestCase):
+ '''Use temporary data folders while testing'''
+ def setUp(self):
+ settings.DISTRO_TRACKER_CACHE_DIRECTORY = tempfile.mkdtemp()
+ settings.DISTRO_TRACKER_KEYRING_DIRECTORY = tempfile.mkdtemp()
+ self.addCleanup(shutil.rmtree, settings.DISTRO_TRACKER_CACHE_DIRECTORY)
+ self.addCleanup(shutil.rmtree, settings.DISTRO_TRACKER_KEYRING_DIRECTORY)
+ super(TestCase, self).setUp()
diff --git a/distro_tracker/vendor/debian/tests.py b/distro_tracker/vendor/debian/tests.py
index 0848044..3ed2fbf 100644
--- a/distro_tracker/vendor/debian/tests.py
+++ b/distro_tracker/vendor/debian/tests.py
@@ -15,7 +15,8 @@ Tests for Debian-specific modules/functionality of Distro Tracker.
"""
from __future__ import unicode_literals
-from django.test import TestCase, SimpleTestCase
+from django.test import SimpleTestCase
+from distro_tracker.core.tests.cleantestcase import TestCase
from django.test.utils import override_settings
from django.core import mail
from django.core.urlresolvers import reverse
--
1.7.10.4
Reply to: