Login

Reset cache between tests

Author:
peterbe
Posted:
November 11, 2009
Language:
Python
Version:
1.1
Tags:
cache tests locmem setup
Score:
0 (after 0 ratings)

I don't understand why the cache is accumulated between the tests. I thought one of the axioms of unit testing is that the tests should not affect each other.

Couldn't find anything that explains why it's done this way but it seems a bit strange. Anybody know if there's a reason or is this a reason for me to upload a patch to Django code?

1
2
3
4
5
6
7
8
from django.test import TestCase
from django.core.cache import cache
from django.conf import settings

class MyTests(TestCase):
    def tearDown(self):
        assert settings.CACHE_BACKEND == 'locmem:///'
        [cache.delete(key) for key in cache._cache.keys()]

More like this

  1. decorators for creating paramaterized decorators and easy monkeypatching by fish2000 5 years, 4 months ago
  2. django-noserun for testing by mjt 6 years, 2 months ago
  3. Scoped Cache Compatible with Django Caching Helpers by axiak 7 years, 3 months ago
  4. Test and Restart Memcached Server by Digitalxero 6 years, 7 months ago
  5. Built-in Slugify with filtering. by jcrawford 6 years, 1 month ago

Comments

Please login first before commenting.