def process_request(self, request): """Record request to database """ entry = RequestModel(path=request.path, username=request.user.username, method=request.method) entry.save() return None # pylint wants this
def test_request_model(self): """Tests for models.RequestModel """ req = RequestModel(path='/some/path', username='', method='GET') req.save() self.assertEqual(repr(req), '<RequestModel: %s>' % req.path)
def test_modifications_log(self): """Test model modification logging facility """ # for testing LogModelModification I will use RequestModel entry # test object creation entry = RequestModel(path='/fake_rq', username='******', method='GET') entry.save() entry_ct = ContentType.objects.get_for_model(entry) log_entry = LogModelModification.objects.filter( object_id=entry.id, content_type=entry_ct).get() self.assertEqual(log_entry.action_flag, ADDITION) # test object modification entry.path = '/other_fake_path' entry.save() log_entries = LogModelModification.objects.filter( object_id=entry.id, content_type=entry_ct) self.assertEqual(log_entries[0].action_flag, CHANGE) # test object removing entry.delete() log_entry = LogModelModification.objects.filter( object_id=entry.id, content_type=entry_ct) self.assertEqual(log_entries[0].action_flag, DELETION) # test MolgModelModification entry deleting # models.log_delete if clause at line 82 log_entries_count = LogModelModification.objects.count() log_entry = LogModelModification.objects.all()[0] log_entry.delete() last_record = LogModelModification.objects.all()[0] self.assertNotEqual(last_record.content_type, ContentType.objects.get_for_model(LogModelModification))