from karmaworld.apps.notes.models import Note
from karmaworld.apps.courses.models import Course
from karmaworld.apps.courses.models import School
-from karmaworld.apps.notes.search import SearchIndex
from karmaworld.apps.notes.views import thank_note, flag_note, downloaded_note
from karmaworld.apps.users.models import NoteKarmaEvent, GenericKarmaEvent, CourseKarmaEvent, give_email_confirm_karma
self.request2.META = {'HTTP_X_REQUESTED_WITH': 'XMLHttpRequest'}
self.request2.session = SessionStore()
- @classmethod
- def setUpClass(cls):
- index = SearchIndex(testing=True)
- index.setup(testing=True)
-
- @classmethod
- def tearDownClass(cls):
- """Delete the test index that was automatically
- created by notes/search.py"""
- index = SearchIndex()
- index.delete_index()
-
def test_thank_own_note_karma(self):
"""Make sure you don't get karma for thanking your own note"""
thank_note(self.request1, self.note.pk)
except ObjectDoesNotExist:
self.fail("Karma event not created")
+ def test_download_own_note_karma(self):
+ """No karma change for downloading your own note"""
+ downloaded_note(self.request1, self.note.pk)
+ try:
+ NoteKarmaEvent.objects.get(event_type=NoteKarmaEvent.DOWNLOADED_NOTE, user=self.user1)
+ self.fail("Karma debited for downloading own note, but shouldn't have been.")
+ except ObjectDoesNotExist:
+ pass
+ try:
+ NoteKarmaEvent.objects.get(event_type=NoteKarmaEvent.HAD_NOTE_DOWNLOADED, user=self.user1)
+ self.fail("Karma given for downloading own note, but shouldn't have been.")
+ except ObjectDoesNotExist:
+ pass
+
def test_email_confirm_karma(self):
class FakeEmailAddress:
user = self.user1