def test_bypass_object_schema(self):
        """
        A complete json object schema can be passed and it will not be modified.
        """
        schema = {'type': 'object'}

        self.assertIs(schema, get_object_schema(schema, enforce=False))
Exemple #2
0
    def get_list_schema(self, min_items: int = 1) -> dict:
        """ Returns list response schema with pagination data
        """
        result_list_schema = {
            "type": "array",
            "items": self.get_schema(),
            "minItems": min_items
        }
        if not self.pagination_schema:
            return result_list_schema

        schema = self.pagination_schema
        schema.update({"results": result_list_schema})
        return schemas.get_object_schema(schema)
Exemple #3
0
 def get_details_schema(self) -> dict:
     """ Returns object schema for details response."""
     return schemas.get_object_schema(self.details_schema)
Exemple #4
0
 def get_schema(self) -> dict:
     """ Returns object schema for list response.
     """
     return schemas.get_object_schema(self.schema)
Exemple #5
0
 def get_details_schema(self, attr: str = 'details_schema') -> dict:
     """ Returns object schema for details response."""
     schema = getattr(self, attr, self.details_schema)
     return schemas.get_object_schema(schema)