예제 #1
0
    def test_add_resource_to_object_which_has_related_resources(self):
        data = ArticlePkgStub().to_dict()
        expected = {}
        expected.update(data)
        expected.update({'tickets':  ['/api/v1/tickets/11/', '/api/v1/tickets/12/']})
        expected.update({'attempts': ['/api/v1/attempts/1/', '/api/v1/attempts/2/']})
        expected.update({'resource_uri': '/api/v1/packages/1/'})
        del expected['related_resources']

        renderer = GtwMetaFactory()
        self.req.path = "/api/v1/packages/"
        self.config.add_route('Attempt', '/api/v1/attempts/{id}/')
        self.config.add_route('Ticket', '/api/v1/tickets/{id}/')

        renderer.request = self.req
        renderer._current_resource_path = lambda *args, **kwargs: None

        self.assertEqual(renderer.add_resource_uri(data), expected)
예제 #2
0
    def test_add_resource_to_object_without_related_resources(self):
        data = {
            'collection_uri': '/api/v1/collection/xxx/',
            'filepath': '/tmp/foo/bar.zip',
            'finished_at': None,
            'articlepkg_id': 1,
            'is_valid': True,
            'started_at': '2013-09-18 14:11:04.129956',
            'id': 1,
            'package_checksum': 'ol9j27n3f52kne7hbn',
        }
        expected = {'resource_uri': '/api/v1/attempts/1/'}
        expected.update(data)

        renderer = GtwMetaFactory()
        self.req.path = "/api/v1/attempts/"
        renderer.request = self.req

        self.assertEqual(renderer.add_resource_uri(data), expected)
예제 #3
0
    def test_add_resource_to_object_without_related_resources(self):
        data = {
                    'collection_uri': '/api/v1/collection/xxx/',
                    'filepath': '/tmp/foo/bar.zip',
                    'finished_at': None,
                    'articlepkg_id': 1,
                    'is_valid': True,
                    'started_at': '2013-09-18 14:11:04.129956',
                    'id': 1,
                    'package_checksum': 'ol9j27n3f52kne7hbn',
                }
        expected = {'resource_uri': '/api/v1/attempts/1/'}
        expected.update(data)

        renderer = GtwMetaFactory()
        self.req.path = "/api/v1/attempts/"
        renderer.request = self.req

        self.assertEqual(renderer.add_resource_uri(data), expected)
예제 #4
0
    def test_add_resource_to_object_which_has_related_resources(self):
        data = ArticlePkgStub().to_dict()
        expected = {}
        expected.update(data)
        expected.update(
            {'tickets': ['/api/v1/tickets/11/', '/api/v1/tickets/12/']})
        expected.update(
            {'attempts': ['/api/v1/attempts/1/', '/api/v1/attempts/2/']})
        expected.update({'resource_uri': '/api/v1/packages/1/'})
        del expected['related_resources']

        renderer = GtwMetaFactory()
        self.req.path = "/api/v1/packages/"
        self.config.add_route('Attempt', '/api/v1/attempts/{id}/')
        self.config.add_route('Ticket', '/api/v1/tickets/{id}/')

        renderer.request = self.req
        renderer._current_resource_path = lambda *args, **kwargs: None

        self.assertEqual(renderer.add_resource_uri(data), expected)