Example #1
0
class ResourceTestCase(URLReverseMixin, unittest.TestCase):
    def setUp(self):
        self.site = ResourceSite()
        self.site.register_builtin_media_types()
        
        self.user = User.objects.get_or_create(username='******', is_staff=True, is_active=True, is_superuser=True)[0]
        self.resource = self.register_resource()
        
        self.factory = SuperUserRequestFactory(user=self.user, HTTP_ACCEPT='text/html')
        
        self.resolver = GenericURLResolver(r'^', self.site.get_urls())
        
        self.patch_reverse(self.resolver)
    
    def tearDown(self):
        self.unpatch_reverse()
    
    def get_api_request(self, **kwargs):
        kwargs.setdefault('site', self.site)
        kwargs.setdefault('user', self.user)
        kwargs.setdefault('params', {})
        kwargs.setdefault('method', 'GET')
        kwargs.setdefault('payload', {})
        kwargs.setdefault('request', self.factory.get('/'))
        api_request = InternalAPIRequest(**kwargs)
        
        api_request.generate_response = MagicMock(return_value=HttpResponse())
        
        return api_request
    
    def register_resource(self):
        raise NotImplementedError
Example #2
0
class ResourceTestCase(unittest.TestCase):
    def setUp(self):
        self.site = ResourceSite(apirequest_class=HTTPAPIKeyRequest)
        self.site.register_builtin_media_types()

        self.user = User.objects.get_or_create(username='******',
                                               is_staff=True,
                                               is_active=True,
                                               is_superuser=True)[0]
        self.resource = self.register_resource()

        self.api_key_instance = ApiKey.objects.get_or_create(user=self.user,
                                                             key='foobar')[0]
        self.api_key = self.api_key_instance.key
        self.factory = RequestFactory(HTTP_ACCEPT='text/html',
                                      API_KEY=self.api_key)

        self.resolver = GenericURLResolver(r'^', self.site.get_urls())

        def reverse(name, *args, **kwargs):
            ret = self.resolver.reverse(name, *args, **kwargs)
            return ret

        self.reverse = reverse

        def cls_reverse(slf, name, *args, **kwargs):
            return self.resolver.reverse(name, *args, **kwargs)

        original_fork = self.site.fork

        def fork(**kwargs):
            ret = original_fork(**kwargs)
            ret.reverse = reverse
            return ret

        self.site.fork = fork
        NamespaceAPIRequest.reverse = cls_reverse
        RootEndpoint.reverse = cls_reverse
        self.site.reverse = reverse

    def get_api_request(self, **kwargs):
        kwargs.setdefault('site', self.site)
        #kwargs.setdefault('user', self.user)
        #kwargs.setdefault('params', {})
        #kwargs.setdefault('method', 'GET')
        #kwargs.setdefault('payload', {})
        kwargs.setdefault('request', self.factory.get('/'))
        kwargs.setdefault('url_args', [])
        kwargs.setdefault('url_kwargs', {})
        #kwargs.setdefault('reverse', self.reverse)
        api_request = HTTPAPIKeyRequest(**kwargs)
        api_request.populate_session_data_from_request(kwargs['request'])

        api_request.generate_response = MagicMock(return_value=HttpResponse())

        return api_request

    def register_resource(self):
        raise NotImplementedError
Example #3
0
class ResourceTestCase(unittest.TestCase):
    def setUp(self):
        self.site = ResourceSite(apirequest_class=HTTPAPIKeyRequest)
        self.site.register_builtin_media_types()
        
        self.user = User.objects.get_or_create(username='******', is_staff=True, is_active=True, is_superuser=True)[0]
        self.resource = self.register_resource()
        
        self.api_key_instance = ApiKey.objects.get_or_create(user=self.user, key='foobar')[0]
        self.api_key = self.api_key_instance.key
        self.factory = RequestFactory(HTTP_ACCEPT='text/html', API_KEY=self.api_key)
        
        self.resolver = GenericURLResolver(r'^', self.site.get_urls())
        
        def reverse(name, *args, **kwargs):
            ret = self.resolver.reverse(name, *args, **kwargs)
            return ret
        self.reverse = reverse
        
        def cls_reverse(slf, name, *args, **kwargs):
            return self.resolver.reverse(name, *args, **kwargs)
        
        original_fork = self.site.fork
        
        def fork(**kwargs):
            ret = original_fork(**kwargs)
            ret.reverse = reverse
            return ret
        
        self.site.fork = fork
        NamespaceAPIRequest.reverse = cls_reverse
        RootEndpoint.reverse = cls_reverse
        self.site.reverse = reverse
    
    def get_api_request(self, **kwargs):
        kwargs.setdefault('site', self.site)
        #kwargs.setdefault('user', self.user)
        #kwargs.setdefault('params', {})
        #kwargs.setdefault('method', 'GET')
        #kwargs.setdefault('payload', {})
        kwargs.setdefault('request', self.factory.get('/'))
        kwargs.setdefault('url_args', [])
        kwargs.setdefault('url_kwargs', {})
        #kwargs.setdefault('reverse', self.reverse)
        api_request = HTTPAPIKeyRequest(**kwargs)
        api_request.populate_session_data_from_request(kwargs['request'])
        
        api_request.generate_response = MagicMock(return_value=HttpResponse())
        
        return api_request
    
    def register_resource(self):
        raise NotImplementedError
Example #4
0
class ResourceTestCase(unittest.TestCase):
    def setUp(self):
        self.site = ResourceSite()
        self.site.register_builtin_media_types()
        
        self.user = User.objects.get_or_create(username='******', is_staff=True, is_active=True, is_superuser=True)[0]
        self.resource = self.register_resource()
        self.factory = SuperUserRequestFactory(user=self.user, HTTP_ACCEPT='application/vnd.Collection+JSON')
        
        self.resolver = GenericURLResolver(r'^', self.site.get_urls())
        
        def reverse(name, *args, **kwargs):
            ret = self.resolver.reverse(name, *args, **kwargs)
            return ret
        
        self.site.reverse = reverse
    
    def register_resource(self):
        raise NotImplementedError