Mercurial > public > sg101
view downloads/tests/test_receivers.py @ 967:734a4a350bd5
Merge with upstream.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 02 Sep 2015 20:50:44 -0500 |
parents | 9f9e50df5b83 |
children |
line wrap: on
line source
"""Tests for the downloads app signal handlers.""" from django.contrib.auth.models import User from django.test import TestCase from mock import Mock import custom_search.receivers from downloads.models import Category from downloads.models import Download from downloads.models import PendingDownload class ReceiverTestCase(TestCase): fixtures = ['downloads_categories.json'] def setUp(self): self.user = User.objects.create_user('user', 'user@example.com', 'pw') # Don't let our custom search signal handler class catch any of the # signals we are throwing here. custom_search.receivers.signal_processor.teardown() def tearDown(self): custom_search.receivers.signal_processor.setup() def test_download_signal_handlers(self): category = Category.objects.get(pk=1) dl = Download(category=category, title='Title', description='Cool stuff', is_public=True, user=self.user, ip_address='127.0.0.1') dl.save() category = Category.objects.get(pk=1) self.assertEqual(1, category.count) category2 = Category.objects.get(pk=4) dl.category = category2 dl.save() category = Category.objects.get(pk=1) self.assertEqual(0, category.count) category2 = Category.objects.get(pk=4) self.assertEqual(1, category2.count) dl.delete() category2 = Category.objects.get(pk=4) self.assertEqual(0, category2.count) def test_pending_download_signal_handlers(self): category = Category.objects.get(pk=1) dl = PendingDownload( category=category, title='Title', description='Cool stuff', user=self.user, ip_address='127.0.0.1') dl.save() dl.file = Mock() dl.delete() dl.file.delete.assert_called_with(save=False)