def test_get_best_match_list(self): best = get_best_match([ 'text/*;q=0.3', 'text/html;q=0.7', 'text/html;level=1', 'text/html;level=2;q=0.4', '*/*;q=0.5'], ['text/json', 'blah/blah']) self.assertEqual(best[0].mimetype, 'text/*') self.assertEqual(best[1], 'text/json')
def test_get_best_match(self): best = get_best_match(('text/*;q=0.3, text/html;q=0.7, text/html;level=1,' 'text/html;level=2;q=0.4, */*;q=0.5'), ['text/json', 'blah/blah']) self.assertEqual(best[0].mimetype, 'text/*') self.assertEqual(best[1], 'text/json')
async def reject_unacceptable_requests(request, response): accept = request.headers.get('ACCEPT') accepts = request.route.payload['accepts'] if accept is None or get_best_match(accept, accepts) is None: raise HttpError(HTTPStatus.NOT_ACCEPTABLE)