add sanity api test

This commit is contained in:
Alexander Onnikov
2025-08-29 14:45:14 +07:00
parent a22f4f4d9c
commit de9f5b7325
8 changed files with 3569 additions and 0 deletions
+1
View File
@@ -1 +1,2 @@
/target
.cargo
+1
View File
@@ -0,0 +1 @@
/target
+3511
View File
File diff suppressed because it is too large Load Diff
+8
View File
@@ -0,0 +1,8 @@
[package]
name = "api-tests"
version = "0.1.0"
edition = "2024"
[dependencies]
tanu = "0.8.2"
tokio = { version = "1.47.1", features = ["full"] }
+16
View File
@@ -0,0 +1,16 @@
use tanu::{check, eyre, get_config, http::Client};
#[tanu::test]
async fn get_auth_without_token_returns_401() -> eyre::Result<()> {
let config = get_config();
let base_url = config.get_str("base_url").unwrap();
let http = Client::new();
let res = http
.get(format!("{}/api/huly/example", base_url))
.send()
.await?;
check!(!res.status().is_success());
check!(res.status().as_u16() == 401);
Ok(())
}
+13
View File
@@ -0,0 +1,13 @@
mod sanity;
mod auth;
use tanu::eyre;
#[tanu::main]
#[tokio::main]
async fn main() -> eyre::Result<()> {
let runner = run();
let app = tanu::App::new();
app.run(runner).await?;
Ok(())
}
+16
View File
@@ -0,0 +1,16 @@
use tanu::{check, get_config, eyre, http::Client};
#[tanu::test]
async fn status_is_ok() -> eyre::Result<()> {
let config = get_config();
let base_url = config.get_str("base_url").unwrap();
let http = Client::new();
let res = http
.get(format!("{}/status", base_url))
.send()
.await?;
check!(res.status().is_success());
check!(res.text().await? == "ok");
Ok(())
}
+3
View File
@@ -0,0 +1,3 @@
[[projects]]
name = "dev"
base_url = "http://localhost:8096"