diff options
Diffstat (limited to 'rust/tests')
-rw-r--r-- | rust/tests/api_server.rs | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/rust/tests/api_server.rs b/rust/tests/api_server.rs new file mode 100644 index 00000000..a2d58740 --- /dev/null +++ b/rust/tests/api_server.rs @@ -0,0 +1,27 @@ + +extern crate iron; +extern crate iron_test; +extern crate fatcat; +extern crate fatcat_api; + +use iron_test::{request, response}; +use iron::{Headers, status}; + +#[test] +fn test_basics() { + + let server = fatcat::server().unwrap(); + let router = fatcat_api::router(server); + + let response = request::get("http://localhost:9411/v0/creator/f1f046a3-45c9-4b99-adce-000000000001", + Headers::new(), + &router).unwrap(); + assert_eq!(response.status, Some(status::Ok)); + let body = response::extract_body_to_string(response); + assert!(body.contains("Grace Hopper")); + + let response = request::get("http://localhost:9411/v0/creator/f1f046a3-45c9-4b99-adce-999999999999", + Headers::new(), + &router).unwrap(); + assert_eq!(response.status, Some(status::NotFound)); +} |