예제 #1
0
 def dispatch_request(self, *args, **kwargs):
     if want_rdf():
         fmt = RDF_EXTENSIONS[negociate_content()]
         url = url_for('datasets.rdf_format',
                       dataset=kwargs['dataset'].id, format=fmt)
         return redirect(url)
     return super(DatasetDetailView, self).dispatch_request(*args, **kwargs)
예제 #2
0
파일: views.py 프로젝트: oncletom/udata
def rdf_catalog(org):
    '''Root RDF endpoint with content negociation handling'''
    format = RDF_EXTENSIONS[negociate_content()]
    url = url_for('organizations.rdf_catalog_format',
                  org=org.id,
                  format=format)
    return redirect(url)
예제 #3
0
 def test_match_known_format_in_accept_header(self):
     headers = {'accept': 'what/ever, application/xml'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'xml')
예제 #4
0
 def test_support_accept_header_multiple_form_with_ponderation(self):
     headers = {'accept': 'application/xml;q=0.8, application/json;q=0.9'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'json-ld')
예제 #5
0
 def test_support_accept_header_multiple_form(self):
     headers = {'accept': 'application/xml, application/json'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'xml')
예제 #6
0
 def test_default_format_if_unkown_accept_header(self):
     headers = {'accept': 'what/ever'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(default='json-ld'), 'json-ld')
예제 #7
0
 def test_default_format_if_no_accept_header(self):
     with self.app.test_request_context():
         self.assertEqual(negociate_content(default='json-ld'), 'json-ld')
예제 #8
0
파일: views.py 프로젝트: odtvince/udata
def rdf(dataset):
    '''Root RDF endpoint with content negociation handling'''
    format = RDF_EXTENSIONS[negociate_content()]
    url = url_for('datasets.rdf_format', dataset=dataset.id, format=format)
    return redirect(url)
예제 #9
0
def rdf_catalog():
    '''Root RDF endpoint with content negociation handling'''
    format = RDF_EXTENSIONS[negociate_content()]
    url = url_for('site.rdf_catalog_format', format=format)
    return redirect(url)
예제 #10
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_support_accept_header_multiple_form_with_ponderation(self):
     headers = {'accept': 'application/xml;q=0.8, application/json;q=0.9'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'json-ld')
예제 #11
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_support_accept_header_multiple_form(self):
     headers = {'accept': 'application/xml, application/json'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'xml')
예제 #12
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_default_format_if_unkown_accept_header(self):
     headers = {'accept': 'what/ever'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(default='json-ld'), 'json-ld')
예제 #13
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_default_format_if_no_accept_header(self):
     with self.app.test_request_context():
         self.assertEqual(negociate_content(default='json-ld'), 'json-ld')
예제 #14
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_find_format_from_accept_header(self):
     for mime, expected in ACCEPTED_MIME_TYPES.items():
         headers = {'accept': mime}
         with self.app.test_request_context(headers=headers):
             self.assertEqual(negociate_content(), expected)
예제 #15
0
파일: api.py 프로젝트: ThomasG77/udata
 def get(self, dataset):
     format = RDF_EXTENSIONS[negociate_content()]
     url = url_for('api.dataset_rdf_format',
                   dataset=dataset.id,
                   format=format)
     return redirect(url)
예제 #16
0
파일: views.py 프로젝트: odtvince/udata
def rdf_catalog():
    '''Root RDF endpoint with content negociation handling'''
    format = RDF_EXTENSIONS[negociate_content()]
    url = url_for('site.rdf_catalog_format', format=format)
    return redirect(url)
예제 #17
0
 def get(self, org):
     format = RDF_EXTENSIONS[negociate_content()]
     url = url_for('api.organization_rdf_format', org=org.id, format=format)
     return redirect(url)
예제 #18
0
파일: test_rdf.py 프로젝트: odtvince/udata
 def test_match_known_format_in_accept_header(self):
     headers = {'accept': 'what/ever, application/xml'}
     with self.app.test_request_context(headers=headers):
         self.assertEqual(negociate_content(), 'xml')
예제 #19
0
def rdf(dataset):
    '''Root RDF endpoint with content negociation handling'''
    format = RDF_EXTENSIONS[negociate_content()]
    url = url_for('datasets.rdf_format', dataset=dataset.id, format=format)
    return redirect(url)
예제 #20
0
 def test_find_format_from_accept_header(self):
     for mime, expected in ACCEPTED_MIME_TYPES.items():
         headers = {'accept': mime}
         with self.app.test_request_context(headers=headers):
             self.assertEqual(negociate_content(), expected)