2018-02-10 00:00:55 +00:00
|
|
|
use super::init_rocket;
|
|
|
|
use rocket::local::Client;
|
|
|
|
use rocket::http::Status;
|
|
|
|
|
|
|
|
// TODO: For testing, we can use either a test_transaction, or an in-memory database
|
2018-02-15 18:05:57 +00:00
|
|
|
// test_transaction: http://docs.diesel.rs/diesel/connection/trait.Connection.html#method.begin_test_transaction
|
|
|
|
// in-memory database: https://github.com/diesel-rs/diesel/issues/419 (basically use ":memory:" as the connection string
|
2018-02-10 00:00:55 +00:00
|
|
|
|
|
|
|
describe! route_tests {
|
|
|
|
before_each {
|
|
|
|
let rocket = init_rocket();
|
|
|
|
let client = Client::new(rocket).expect("valid rocket instance");
|
|
|
|
}
|
|
|
|
|
|
|
|
describe! alive {
|
|
|
|
before_each {
|
|
|
|
let mut res = client.get("/alive").dispatch();
|
|
|
|
let body_str = res.body().and_then(|b| b.into_string()).unwrap();
|
|
|
|
}
|
|
|
|
|
|
|
|
it "responds with status OK 200" {
|
|
|
|
assert_eq!(res.status(), Status::Ok);
|
|
|
|
}
|
|
|
|
|
|
|
|
it "responds with current year" {
|
|
|
|
assert!(body_str.contains("2018"));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
describe! nested_example {
|
|
|
|
ignore "this is ignored" {
|
|
|
|
assert_eq!(1, 2);
|
|
|
|
}
|
|
|
|
|
|
|
|
failing "this fails" {
|
|
|
|
assert_eq!(1, 2);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|