def test_setters_none(self): req = HTTPRequest() req.method = None req.resource = None req.headers = None req.query_params = None req.content = None req.ignore404 = None self.assertIsInstance(req, HTTPRequest) self.assertTrue(hasattr(req, "content")) self.assertIsNone(req.content) self.assertTrue(hasattr(req, "ignore404")) self.assertFalse(req.ignore404) self.assertTrue(hasattr(req, "method")) self.assertIsNone(req.method) self.assertTrue(hasattr(req, "resource")) self.assertIsNone(req.resource) self.assertTrue(hasattr(req, "headers")) self.assertEqual(req.headers, {}) self.assertTrue(hasattr(req, "query_params")) self.assertEqual(req.query_params, {})
def test_init_arg_exception_obj(self): class Tester(object): def __init__(self, resource="ok", bad_test="test"): self.resource = resource self.bad_test = bad_test obj = Tester() with self.assertRaises(AttributeError): HTTPRequest(obj)
def test_init_partial(self): req = HTTPRequest(method="method test", query_params={"test": "val"}) self.assertIsInstance(req, HTTPRequest) self.assertEqual(req.method, "method test") self.assertEqual(req.query_params, {"test": "val"}) self.assertIsNone(req.content) self.assertIsNone(req.ignore404) self.assertTrue(hasattr(req, "resource")) self.assertIsNone(req.resource) self.assertTrue(hasattr(req, "headers")) self.assertEqual(req.headers, {})
def test_init_empty(self): req = HTTPRequest() self.assertIsInstance(req, HTTPRequest) self.assertIsNone(req.content) self.assertIsNone(req.ignore404) self.assertTrue(hasattr(req, "method")) self.assertIsNone(req.method) self.assertTrue(hasattr(req, "resource")) self.assertIsNone(req.resource) self.assertTrue(hasattr(req, "headers")) self.assertEqual(req.headers, {}) self.assertTrue(hasattr(req, "query_params")) self.assertEqual(req.query_params, {})
def test_setters(self): req = HTTPRequest() req.method = "method test" req.resource = "resource test" req.headers = {"test": "val"} req.query_params = {"test": "val"} req.content = "content test" req.ignore404 = True self.assertIsInstance(req, HTTPRequest) self.assertEqual(req.method, "method test") self.assertEqual(req.resource, "resource test") self.assertEqual(req.headers, {"test": "val"}) self.assertEqual(req.query_params, {"test": "val"}) self.assertEqual(req.content, "content test") self.assertTrue(req.ignore404)
def test_init_partial(self): req = HTTPRequest(resource="test") resp = LRSResponse( success=True, content="content test", request=req, ) self.assertIsInstance(resp, LRSResponse) self.assertTrue(resp.success) self.assertEqual(resp.content, "content test") self.assertIsInstance(resp.request, HTTPRequest) self.assertEqual(resp.request, req) self.assertTrue(hasattr(resp, "response")) self.assertIsNone(resp.response)
def test_query_params_setter(self): class Tester(object): def __init__(self, param="ok", tester="test"): self.param = param self.tester = tester obj = Tester() req = HTTPRequest(query_params=obj) self.assertIsInstance(req, HTTPRequest) self.assertIsInstance(req.query_params, dict) self.assertTrue("param" in req.query_params) self.assertEqual(req.query_params["param"], "ok") self.assertTrue("tester" in req.query_params) self.assertEqual(req.query_params["tester"], "test")
def test_setters(self): conn = http.client.HTTPConnection("tincanapi.com") conn.request("GET", "") web_resp = conn.getresponse() req = HTTPRequest(resource="test") resp = LRSResponse() resp.success = True resp.content = "content test" resp.request = req resp.response = web_resp self.assertIsInstance(resp, LRSResponse) self.assertTrue(resp.success) self.assertEqual(resp.content, "content test") self.assertIsInstance(resp.request, HTTPRequest) self.assertEqual(resp.request, req) self.assertEqual(resp.request.resource, "test") self.assertIsInstance(resp.response, http.client.HTTPResponse) self.assertEqual(resp.response, web_resp)
def test_init_all(self): conn = httplib.HTTPConnection("tincanapi.com") conn.request("GET", "") web_resp = conn.getresponse() req = HTTPRequest(resource="test") resp = LRSResponse( success=True, content="content test", request=req, response=web_resp, ) self.assertIsInstance(resp, LRSResponse) self.assertTrue(resp.success) self.assertEqual(resp.content, "content test") self.assertIsInstance(resp.request, HTTPRequest) self.assertEqual(resp.request, req) self.assertIsInstance(resp.response, httplib.HTTPResponse) self.assertEqual(resp.response, web_resp)
def test_init_arg_exception_dict(self): d = {"bad_test": "test", "resource": "ok"} with self.assertRaises(AttributeError): HTTPRequest(d)
def test_init_kwarg_exception(self): with self.assertRaises(AttributeError): HTTPRequest(bad_test="test")