def test_GET_default_2(self): self.test_insert_anotation() for accept in FORMAT_MAP.values(): request = self.factory.get('/endpoint', data = {}, HTTP_ACCEPT = accept) response = endpoint(request) self.assert_(response.status_code in [200, 204], "HTTPResponse has status: %s" % response.status_code) self.assert_('http://data.gov.uk//dataset/index-of-multiple-deprivation' in response.content, "Cannot serialize %s" % accept)
def _validateFormat(request): ''' Returns the mimetype of the required format as mapped by rdflib return: String - an allowed rdflib mimetype ''' req_format = None if isGET(request): req_format = FORMAT_MAP.get(request.GET.get('format', None)) if isPOST(request): req_format = request.environ.get('CONTENT_TYPE', None) if req_format: if req_format not in FORMAT_MAP.values(): raise SerializeError("Cannot generate the required format %s " % req_format) return req_format
def processHEAD(request, return_content = False): ''' Returns an httplib.HTTPRequest ''' graph = get_graph_from_request(request) accept = http_accept(request) if accept not in FORMAT_MAP.values(): return HttpResponse(status = 406) g = None if graph is None: g = ConjunctiveGraph(store=CharmeMiddleware.get_store()) else: g = generate_graph(CharmeMiddleware.get_store(), URIRef(graph)) content = g.serialize(format = rdf_format_from_mime(accept)) if return_content: return HttpResponse(content = content) return HttpResponse()