From 2783c44af1b9c35c0934b4c30f5cf1cfb2292256 Mon Sep 17 00:00:00 2001 From: Kurt Griffiths Date: Wed, 9 Jan 2013 15:13:36 -0500 Subject: [PATCH] refactor(Request): Rename get_header and get_param to try_* In preparation for adding variants of these methods that raise exceptions, rename these to make it obvious that they return default values if the specified header or param is not found in the request. --- falcon/request.py | 6 +++--- test/test_headers.py | 8 ++++---- test/test_query_params.py | 18 +++++++++--------- test/test_req_vars.py | 6 +++--- test/test_request_body.py | 2 +- test/test_uri_templates.py | 16 ++++++++-------- 6 files changed, 28 insertions(+), 28 deletions(-) diff --git a/falcon/request.py b/falcon/request.py index 81fc547..b56eca1 100644 --- a/falcon/request.py +++ b/falcon/request.py @@ -56,7 +56,7 @@ class Request: _headers['HOST'] = host - def get_header(self, name, default=None): + def try_get_header(self, name, default=None): """Return a header value as a string name -- Header name, case-insensitive (e.g., 'Content-Type') @@ -70,10 +70,10 @@ class Request: # This will be faster, assuming that most headers are looked # up only once, and not all headers will be requested. return self._headers[name.upper().replace('-', '_')] - except KeyError as e: + except KeyError: return default - def get_param(self, name, default=None): + def try_get_param(self, name, default=None): """Return a URI parameter value as a string name -- Parameter name as specified in the route template. Note that diff --git a/test/test_headers.py b/test/test_headers.py index 18ede3f..2f6b854 100644 --- a/test/test_headers.py +++ b/test/test_headers.py @@ -35,7 +35,7 @@ class TestHeaders(helpers.TestSuite): self._simulate_request(self.test_route) # Make sure we picked up host from HTTP_HOST, not SERVER_NAME - host = self.reqhandler.req.get_header('host') + host = self.reqhandler.req.try_get_header('host') self.assertEquals(host, 'falconer') def test_host_fallback(self): @@ -43,7 +43,7 @@ class TestHeaders(helpers.TestSuite): self._simulate_request(self.test_route, protocol='HTTP/1.0') # Make sure we picked up host from HTTP_HOST, not SERVER_NAME - host = self.reqhandler.req.get_header('host') + host = self.reqhandler.req.try_get_header('host') self.assertEquals(host, 'localhost') def test_host_fallback_port8000(self): @@ -52,7 +52,7 @@ class TestHeaders(helpers.TestSuite): port='8000') # Make sure we picked up host from HTTP_HOST, not SERVER_NAME - host = self.reqhandler.req.get_header('host') + host = self.reqhandler.req.try_get_header('host') self.assertEquals(host, 'localhost:8000') def test_no_body_on_1xx(self): @@ -103,7 +103,7 @@ class TestHeaders(helpers.TestSuite): self._simulate_request(self.test_route, headers=req_headers) for name, expected_value in req_headers.iteritems(): - actual_value = self.reqhandler.req.get_header(name) + actual_value = self.reqhandler.req.try_get_header(name) self.assertEquals(actual_value, expected_value) def test_passthrough_resp_headers(self): diff --git a/test/test_query_params.py b/test/test_query_params.py index e8ef1d8..89bebe4 100644 --- a/test/test_query_params.py +++ b/test/test_query_params.py @@ -14,30 +14,30 @@ class TestQueryParams(helpers.TestSuite): self._simulate_request('/', query_string=query_string) req = self.reqhandler.req - self.assertEquals(req.get_param('marker'), None) - self.assertEquals(req.get_param('limit'), None) + self.assertEquals(req.try_get_param('marker'), None) + self.assertEquals(req.try_get_param('limit'), None) def test_simple(self): query_string = 'marker=deadbeef&limit=25' self._simulate_request('/', query_string=query_string) req = self.reqhandler.req - self.assertEquals(req.get_param('marker'), 'deadbeef') - self.assertEquals(req.get_param('limit'), '25') + self.assertEquals(req.try_get_param('marker'), 'deadbeef') + self.assertEquals(req.try_get_param('limit'), '25') def test_list_type(self): query_string = 'colors=red,green,blue&limit=1' self._simulate_request('/', query_string=query_string) req = self.reqhandler.req - self.assertEquals(req.get_param('colors'), ['red', 'green', 'blue']) - self.assertEquals(req.get_param('limit'), '1') + self.assertEquals(req.try_get_param('colors'), ['red', 'green', 'blue']) + self.assertEquals(req.try_get_param('limit'), '1') def test_bogus_input(self): query_string = 'colors=red,green,&limit=1&pickle' self._simulate_request('/', query_string=query_string) req = self.reqhandler.req - self.assertEquals(req.get_param('colors'), ['red', 'green', '']) - self.assertEquals(req.get_param('limit'), '1') - self.assertEquals(req.get_param('pickle'), None) + self.assertEquals(req.try_get_param('colors'), ['red', 'green', '']) + self.assertEquals(req.try_get_param('limit'), '1') + self.assertEquals(req.try_get_param('pickle'), None) diff --git a/test/test_req_vars.py b/test/test_req_vars.py index 9b4e5d5..ed02698 100644 --- a/test/test_req_vars.py +++ b/test/test_req_vars.py @@ -20,7 +20,7 @@ class TestReqVars(helpers.TestSuite): req = self.req scheme = req.protocol - host = req.get_header('host') + host = req.try_get_header('host') app = req.app path = req.path query_string = req.query_string @@ -40,7 +40,7 @@ class TestReqVars(helpers.TestSuite): self.assertEquals(self.req.path, '/') def test_content_type(self): - self.assertEquals(self.req.get_header('content-type'), 'text/plain') + self.assertEquals(self.req.try_get_header('content-type'), 'text/plain') def test_content_length(self): - self.assertEquals(self.req.get_header('content-length'), '4829') + self.assertEquals(self.req.try_get_header('content-length'), '4829') diff --git a/test/test_request_body.py b/test/test_request_body.py index 4ec96f6..c819c2a 100644 --- a/test/test_request_body.py +++ b/test/test_request_body.py @@ -34,7 +34,7 @@ class TestRequestBody(helpers.TestSuite): self._simulate_request('', body=expected_body, headers=headers) - content_len = self.reqhandler.req.get_header('content-length') + content_len = self.reqhandler.req.try_get_header('content-length') self.assertEqual(content_len, str(expected_len)) stream = self.reqhandler.req.body diff --git a/test/test_uri_templates.py b/test/test_uri_templates.py index b067b38..0650295 100644 --- a/test/test_uri_templates.py +++ b/test/test_uri_templates.py @@ -13,7 +13,7 @@ class TestUriTemplates(helpers.TestSuite): self.assertTrue(self.reqhandler.called) req = self.reqhandler.req - self.assertEquals(req.get_param('id'), None) + self.assertEquals(req.try_get_param('id'), None) def test_no_vars(self): self.api.add_route('/hello/world', self.reqhandler) @@ -22,7 +22,7 @@ class TestUriTemplates(helpers.TestSuite): self.assertTrue(self.reqhandler.called) req = self.reqhandler.req - self.assertEquals(req.get_param('world'), None) + self.assertEquals(req.try_get_param('world'), None) def test_single(self): self.api.add_route('/widgets/{id}', self.reqhandler) @@ -31,8 +31,8 @@ class TestUriTemplates(helpers.TestSuite): self.assertTrue(self.reqhandler.called) req = self.reqhandler.req - self.assertEquals(req.get_param('id'), '123') - self.assertEquals(req.get_param('Id'), None) + self.assertEquals(req.try_get_param('id'), '123') + self.assertEquals(req.try_get_param('Id'), None) def test_single_trailing_slash(self): self.api.add_route('/widgets/{id}/', self.reqhandler) @@ -44,7 +44,7 @@ class TestUriTemplates(helpers.TestSuite): self.assertTrue(self.reqhandler.called) req = self.reqhandler.req - self.assertEquals(req.get_param('id'), '123') + self.assertEquals(req.try_get_param('id'), '123') def test_multiple(self): self.api.add_route('/messages/{Id}/names/{Name}', self.reqhandler) @@ -56,6 +56,6 @@ class TestUriTemplates(helpers.TestSuite): self.assertTrue(self.reqhandler.called) req = self.reqhandler.req - self.assertEquals(req.get_param('Id'), test_id) - self.assertEquals(req.get_param('Name'), test_name) - self.assertEquals(req.get_param('name'), None) + self.assertEquals(req.try_get_param('Id'), test_id) + self.assertEquals(req.try_get_param('Name'), test_name) + self.assertEquals(req.try_get_param('name'), None)