diff options
-rw-r--r-- | src/lib.rs | 8 | ||||
-rw-r--r-- | src/tests.rs | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/lib.rs b/src/lib.rs index 56d6327e40bf..9caedff31914 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -303,6 +303,14 @@ impl <'a> Request<'a> { } } +impl <T> Response<T> { + /// Check whether the status code of this HTTP response is a + /// success (i.e. in the 200-299 range). + pub fn is_success(&self) -> bool { + self.status >= 200 && self.status < 300 + } +} + impl Response<Vec<u8>> { /// Attempt to parse the HTTP response body as a UTF-8 encoded /// string. diff --git a/src/tests.rs b/src/tests.rs index 8067e7cf66e4..cc44ca7b53a0 100644 --- a/src/tests.rs +++ b/src/tests.rs @@ -9,7 +9,7 @@ fn test_http_get() { let resp = Request::new(Method::Get, "https://httpbin.org/get") .send().expect("failed to send request"); - assert_eq!(200, resp.status, "response status should be 200 OK"); + assert!(resp.is_success(), "request should have succeeded"); } #[test] |