diff --git a/crates/ezidam/src/routes/setup.rs b/crates/ezidam/src/routes/setup.rs index 5471286..4989297 100644 --- a/crates/ezidam/src/routes/setup.rs +++ b/crates/ezidam/src/routes/setup.rs @@ -93,11 +93,7 @@ mod test { assert_eq!(setup_page.status(), Status::Ok); // Create account - let create_account = client - .post(uri!("/setup")) - .header(ContentType::Form) - .body(r#"username=phil&password=password&url=https://example.com"#) - .dispatch(); + let create_account = run_setup(&client); assert_eq!(create_account.status(), Status::SeeOther); // Make request again, make sure its not OK diff --git a/crates/ezidam/src/routes/well_known.rs b/crates/ezidam/src/routes/well_known.rs index ce8c20d..d3fd0ee 100644 --- a/crates/ezidam/src/routes/well_known.rs +++ b/crates/ezidam/src/routes/well_known.rs @@ -23,3 +23,39 @@ async fn openid_configuration(mut db: Connection) -> Result().is_some()); + } + + #[test] + fn invalid_openid_configuration() { + // Setup http server + let client = setup_rocket_testing(); + + // Make request + let response = client + .get(uri!("/.well-known/openid-configuration")) + .dispatch(); + assert_ne!(response.status(), Status::Ok); + } +} diff --git a/crates/ezidam/src/tests.rs b/crates/ezidam/src/tests.rs index 2563f99..af49a6e 100644 --- a/crates/ezidam/src/tests.rs +++ b/crates/ezidam/src/tests.rs @@ -1,5 +1,5 @@ use crate::rocket_setup; -use rocket::local::blocking::Client; +use rocket::local::blocking::{Client, LocalResponse}; use rocket::{Build, Rocket}; pub use rocket::http::{ContentType, Status}; @@ -26,3 +26,11 @@ fn rocket_with_memory_database() -> Rocket { pub fn setup_rocket_testing() -> Client { Client::tracked(rocket_with_memory_database()).expect("valid rocket instance") } + +pub fn run_setup(client: &Client) -> LocalResponse { + client + .post(uri!("/setup")) + .header(ContentType::Form) + .body(r#"username=phil&password=password&url=https://example.com"#) + .dispatch() +}