def test_generate_report_get_for_report_with_no_params(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"some": "thing"} self.request.matchdict['name'] = "test" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPPreconditionFailed)
def test_generate_report_get_for_report_not_in_registry(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"some": "thing"} self.request.matchdict['name'] = "testNotFound" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPNotFound)
def test_generate_report_post_for_report_with_no_param(self): self.request.content_type = "application/json" self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"some": "thing"} self.request.json_body = "{'a':1}" self.request.matchdict['name'] = "test" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPPreconditionFailed)
def test_generate_report_get_for_report_with_no_params(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "some": "thing" } self.request.matchdict['name'] = "test" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPPreconditionFailed)
def test_generate_report_get_for_report_not_in_registry(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "some": "thing" } self.request.matchdict['name'] = "testNotFound" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPNotFound)
def test_generate_report_get_for_valid_request(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.matchdict['name'] = "test" validator = DummyValidator() params = {"studentId": {"type": "integer", "required": True}} self.request.GET = {"studentId": 123} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"params": params, "reference": (Dummy, Dummy.some_func)} response = generate_report(self.request, validator) self.assertEqual(response, {"report": self.request.GET})
def test_generate_report_post_for_report_with_no_param(self): self.request.content_type = "application/json" self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "some": "thing" } self.request.json_body = "{'a':1}" self.request.matchdict['name'] = "test" response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPPreconditionFailed)
def test_generate_report_post_for_valid_request(self): self.request.content_type = "application/json" self.request.method = 'POST' self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"some": "thing"} self.request.matchdict['name'] = "test" params = {"studentId": {"type": "string", "required": True}} self.request.json_body = {"studentId": "123"} validator = DummyValidator() self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = {"params": params, "reference": (Dummy, Dummy.some_func)} response = generate_report(self.request, validator) self.assertEqual(response, {"report": self.request.json_body})
def test_generate_report_get_for_valid_request(self): self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.matchdict['name'] = "test" validator = DummyValidator() params = {"studentId": {"type": "integer", "required": True}} self.request.GET = {"studentId": 123} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "params": params, "reference": (Dummy, Dummy.some_func) } response = generate_report(self.request, validator) self.assertEqual(response, {"report": self.request.GET})
def test_generate_report_post_for_valid_request(self): self.request.content_type = "application/json" self.request.method = 'POST' self.request.registry[EDAPI_REPORTS_PLACEHOLDER] = {} self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "some": "thing" } self.request.matchdict['name'] = "test" params = {"studentId": {"type": "string", "required": True}} self.request.json_body = {"studentId": "123"} validator = DummyValidator() self.request.registry[EDAPI_REPORTS_PLACEHOLDER]["test"] = { "params": params, "reference": (Dummy, Dummy.some_func) } response = generate_report(self.request, validator) self.assertEqual(response, {"report": self.request.json_body})
def test_url_too_long_in_get_request(self): self.request.url = 'h' * 2001 response = generate_report(self.request) self.assertIs(type(response), EdApiHTTPRequestURITooLong)