示例#1
0
    def request(self):
        data = self.data
        if 'META' in data:
            kwargs = {
                'META': data.get('META'),
                'GET': data.get('GET'),
                'POST': data.get('POST'),
                'FILES': data.get('FILES'),
                'COOKIES': data.get('COOKIES'),
                'url': data.get('url'),
            }
        elif 'sentry.interfaces.Http' in data:
            http = data['sentry.interfaces.Http']
            kwargs = {
                'META': http
            }
        else:
            return MockDjangoRequest()

        fake_request = MockDjangoRequest(**kwargs)
        if kwargs['url']:
            fake_request.path_info = '/' + kwargs['url'].split('/', 3)[-1]
        else:
            fake_request.path_info = ''
        fake_request.path = fake_request.path_info
        return fake_request
示例#2
0
 def request(self):
     fake_request = MockDjangoRequest(
         META=self.data.get("META") or {},
         GET=self.data.get("GET") or {},
         POST=self.data.get("POST") or {},
         FILES=self.data.get("FILES") or {},
         COOKIES=self.data.get("COOKIES") or {},
         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
示例#3
0
 def request(self):
     fake_request = MockDjangoRequest(
         META = self.data.get('META') or {},
         GET = self.data.get('GET') or {},
         POST = self.data.get('POST') or {},
         FILES = self.data.get('FILES') or {},
         COOKIES = self.data.get('COOKIES') or {},
         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
示例#4
0
 def request(self):
     fake_request = MockDjangoRequest(
         META=self.data.get('META') or {},
         GET=self.data.get('GET') or {},
         POST=self.data.get('POST') or {},
         FILES=self.data.get('FILES') or {},
         COOKIES=self.data.get('COOKIES') or {},
         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
示例#5
0
    def testRawPostData(self):
        from sentry.utils import MockDjangoRequest

        request = MockDjangoRequest(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'])
示例#6
0
    def testExtraStorage(self):
        from sentry.utils import MockDjangoRequest

        request = MockDjangoRequest(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')
示例#7
0
    def request(self):
        data = self.data
        if 'META' in data:
            kwargs = {
                'META': data.get('META'),
                'GET': data.get('GET'),
                'POST': data.get('POST'),
                'FILES': data.get('FILES'),
                'COOKIES': data.get('COOKIES'),
                'url': data.get('url'),
            }
        elif 'sentry.interfaces.Http' in data:
            http = data['sentry.interfaces.Http']
            kwargs = {
                'META': http
            }
        else:
            return MockDjangoRequest()

        fake_request = MockDjangoRequest(**kwargs)
        if kwargs['url']:
            fake_request.path_info = '/' + kwargs['url'].split('/', 3)[-1]
        else:
            fake_request.path_info = ''
        fake_request.path = fake_request.path_info
        return fake_request