Esempio n. 1
0
    def test_class_parameters_are_used_for_collection_arguments(self):
        default_arguments = {
            'cors_headers': mock.sentinel.cors_headers,
        }

        default_get_arguments = {
            'accept': mock.sentinel.accept,
        }

        default_collection_arguments = {
            'cors_origins': mock.sentinel.cors_origins,
        }

        collection_get_arguments = {
            'error_handler': mock.sentinel.error_handler
        }

        viewset = ViewSet(
            default_arguments=default_arguments,
            default_get_arguments=default_get_arguments,
            default_collection_arguments=default_collection_arguments,
            collection_get_arguments=collection_get_arguments
        )

        arguments = viewset.collection_arguments(mock.MagicMock, 'get')
        arguments.pop('schema')
        self.assertDictEqual(
            arguments,
            {
                'accept': mock.sentinel.accept,
                'cors_headers': mock.sentinel.cors_headers,
                'cors_origins': mock.sentinel.cors_origins,
                'error_handler': mock.sentinel.error_handler,
            }
        )
Esempio n. 2
0
    def test_class_parameters_are_used_for_collection_arguments(self):
        default_arguments = {
            'cors_headers': mock.sentinel.cors_headers,
        }

        default_get_arguments = {
            'accept': mock.sentinel.accept,
        }

        default_collection_arguments = {
            'cors_origins': mock.sentinel.cors_origins,
        }

        collection_get_arguments = {
            'error_handler': mock.sentinel.error_handler
        }

        viewset = ViewSet(
            default_arguments=default_arguments,
            default_get_arguments=default_get_arguments,
            default_collection_arguments=default_collection_arguments,
            collection_get_arguments=collection_get_arguments)

        arguments = viewset.collection_arguments(mock.MagicMock, 'get')
        arguments.pop('schema')
        self.assertDictEqual(
            arguments, {
                'accept': mock.sentinel.accept,
                'cors_headers': mock.sentinel.cors_headers,
                'cors_origins': mock.sentinel.cors_origins,
                'error_handler': mock.sentinel.error_handler,
            })
Esempio n. 3
0
 def test_default_arguments_are_copied_before_being_returned(self):
     original_arguments = {}
     viewset = ViewSet(collection_get_arguments=original_arguments,
                       validate_schema_for=())
     arguments = viewset.collection_arguments(mock.sentinel.resource, 'GET')
     self.assertEquals(original_arguments, {})
     self.assertNotEquals(original_arguments, arguments)
Esempio n. 4
0
 def test_schema_is_added_when_uppercase_method_matches(self):
     viewset = ViewSet(
         validate_schema_for=('GET', )
     )
     resource = mock.MagicMock(mapping=colander.SchemaNode(colander.Int()))
     arguments = viewset.collection_arguments(resource, 'get')
     schema = arguments['schema']
     self.assertEquals(schema.children[0], resource.mapping)
Esempio n. 5
0
 def test_default_arguments_are_copied_before_being_returned(self):
     original_arguments = {}
     viewset = ViewSet(
         collection_get_arguments=original_arguments,
         validate_schema_for=()
     )
     arguments = viewset.collection_arguments(mock.sentinel.resource, 'GET')
     self.assertEquals(original_arguments, {})
     self.assertNotEquals(original_arguments, arguments)
Esempio n. 6
0
    def test_a_default_schema_is_added_when_method_doesnt_match(self, mocked):
        viewset = ViewSet(validate_schema_for=('GET', ))
        resource = mock.MagicMock()
        mocked.MappingSchema.return_value = mock.sentinel.default_schema

        arguments = viewset.collection_arguments(resource, 'POST')
        self.assertEquals(arguments['schema'], mock.sentinel.default_schema)
        self.assertNotEqual(arguments['schema'], resource.mapping)

        mocked.MappingSchema.assert_called_with(unknown='preserve')
Esempio n. 7
0
    def test_a_default_schema_is_added_when_method_doesnt_match(self, mocked):
        viewset = ViewSet(
            validate_schema_for=('GET', )
        )
        resource = mock.MagicMock()
        mocked.MappingSchema.return_value = mock.sentinel.default_schema

        arguments = viewset.collection_arguments(resource, 'POST')
        self.assertEquals(arguments['schema'], mock.sentinel.default_schema)
        self.assertNotEqual(arguments['schema'], resource.mapping)

        mocked.MappingSchema.assert_called_with(unknown='preserve')
Esempio n. 8
0
 def test_permission_private_is_set_by_default(self):
     viewset = ViewSet()
     args = viewset.collection_arguments(mock.sentinel.resource, 'GET')
     self.assertEquals(args['permission'], 'private')
Esempio n. 9
0
 def test_schema_is_added_when_uppercase_method_matches(self):
     viewset = ViewSet(validate_schema_for=('GET', ))
     resource = mock.MagicMock(mapping=colander.SchemaNode(colander.Int()))
     arguments = viewset.collection_arguments(resource, 'get')
     schema = arguments['schema']
     self.assertEquals(schema.children[0], resource.mapping)
Esempio n. 10
0
 def test_permission_private_is_set_by_default(self):
     viewset = ViewSet()
     args = viewset.collection_arguments(mock.sentinel.resource, 'GET')
     self.assertEquals(args['permission'], 'private')