def testRawPostData(self): from sentry.reporter import FakeRequest request = FakeRequest() request.raw_post_data = '{"json": "string"}' logger = logging.getLogger() self.setUpHandler() logger.error('This is a test %s', 'error', extra={ 'request': request, 'data': { 'baz': 'bar', } }) self.assertEquals(Message.objects.count(), 1) self.assertEquals(GroupedMessage.objects.count(), 1) last = Message.objects.get() self.assertEquals(last.logger, 'root') self.assertEquals(last.level, logging.ERROR) self.assertEquals(last.message, 'This is a test error') self.assertTrue('POST' in last.data) self.assertEquals(request.raw_post_data, last.data['POST'])
def testExtraStorage(self): from sentry.reporter import FakeRequest request = FakeRequest() request.META['foo'] = 'bar' logger = logging.getLogger() self.setUpHandler() logger.error('This is a test %s', 'error', extra={ 'request': request, 'data': { 'baz': 'bar', } }) self.assertEquals(Message.objects.count(), 1) self.assertEquals(GroupedMessage.objects.count(), 1) last = Message.objects.get() self.assertEquals(last.logger, 'root') self.assertEquals(last.level, logging.ERROR) self.assertEquals(last.message, 'This is a test error') self.assertTrue('META' in last.data) self.assertTrue('foo' in last.data['META']) self.assertEquals(last.data['META']['foo'], 'bar') self.assertTrue('baz' in last.data) self.assertEquals(last.data['baz'], 'bar')
def request(self): fake_request = FakeRequest() fake_request.META = self.data.get('META') or {} fake_request.GET = self.data.get('GET') or {} fake_request.POST = self.data.get('POST') or {} fake_request.FILES = self.data.get('FILES') or {} fake_request.COOKIES = self.data.get('COOKIES') or {} fake_request.url = self.url if self.url: fake_request.path_info = '/' + self.url.split('/', 3)[-1] else: fake_request.path_info = '' fake_request.path = fake_request.path_info return fake_request