zero2prod_axum/tests/quick_dev.rs
2023-10-21 13:47:06 +02:00

71 lines
1.9 KiB
Rust

#![allow(unused_imports)]
use anyhow::Result;
use serde_json::json;
#[tokio::test]
async fn test_quick_dev() -> Result<()> {
let hc = httpc_test::new_client("http://localhost:3000")?;
hc.do_get("/hello?name=jen").await?.print().await?;
let hc = httpc_test::new_client("http://localhost:3000")?;
hc.do_get("/hello2/mike").await?.print().await?;
hc.do_get("/src/main.rs").await?.print().await?;
hc.do_get("/src/blub.rs").await?.print().await?;
let req_login = hc.do_post(
"/api/login",
json!(
{
"username": "demo1",
"password": "demowrong"
}
),
);
req_login.await?.print().await?;
let req_login = hc.do_post(
"/api/login",
json!(
{
"username": "demo1",
"password": "demo1"
}
),
);
req_login.await?.print().await?;
hc.do_get("/hello2/mike").await?.print().await?;
let req_create_property = hc.do_post(
"/api/properties",
json!(
{
"address": "Lolilat Street 1",
"contact": "01234 567890"
}
),
);
req_create_property.await?.print().await?;
let req_create_property = hc.do_post(
"/api/properties",
json!(
{
"address": "Lolilat Street 2",
"contact": "01243 217890"
}
),
);
req_create_property.await?.print().await?;
let req_get_properties = hc.do_get("/api/properties").await?;
req_get_properties.print().await?;
let req_delete_property = hc.do_delete("/api/properties/1").await?;
req_delete_property.print().await?;
let req_get_properties = hc.do_get("/api/properties").await?;
req_get_properties.print().await?;
let req_delete_property = hc.do_delete("/api/properties/0").await?;
req_delete_property.print().await?;
Ok(())
}