mirror of
https://github.com/RaisFast/raisfast.git
synced 2026-09-24 00:02:28 +00:00
70 lines
1.9 KiB
Rust
70 lines
1.9 KiB
Rust
use super::*;
|
|
|
|
fn admin_token() -> String {
|
|
let id = uuid::Uuid::now_v7().to_string();
|
|
make_token(&id, 1, raisfast::models::user::UserRole::Admin)
|
|
}
|
|
|
|
#[tokio::test]
|
|
async fn public_options_empty() {
|
|
let (mut app, _) = test_app().await;
|
|
let (status, body) = send(&mut app, get_req("/api/v1/options/public")).await;
|
|
assert!(status.is_success(), "public options: {status} {body:?}");
|
|
assert_eq!(body["code"], 0);
|
|
}
|
|
|
|
#[tokio::test]
|
|
async fn list_options_empty() {
|
|
let (mut app, _) = test_app().await;
|
|
let tok = admin_token();
|
|
let (status, body) = send(&mut app, get_auth("/api/v1/admin/options", &tok)).await;
|
|
assert!(status.is_success(), "list options: {status} {body:?}");
|
|
assert_eq!(body["code"], 0);
|
|
}
|
|
|
|
#[tokio::test]
|
|
async fn set_get_delete_option() {
|
|
let (mut app, _) = test_app().await;
|
|
let tok = admin_token();
|
|
|
|
let key = format!("test.{}", uuid::Uuid::now_v7());
|
|
|
|
let (status, body) = send(
|
|
&mut app,
|
|
put_json_auth(
|
|
&format!("/api/v1/admin/options/{key}"),
|
|
json!({"value": "Test Value"}),
|
|
&tok,
|
|
),
|
|
)
|
|
.await;
|
|
assert!(status.is_success(), "set option: {status} {body:?}");
|
|
|
|
let (status, _body) = send(
|
|
&mut app,
|
|
delete_auth(&format!("/api/v1/admin/options/{key}"), &tok),
|
|
)
|
|
.await;
|
|
assert!(status.is_success(), "delete option: {status}");
|
|
}
|
|
|
|
#[tokio::test]
|
|
async fn batch_update_options() {
|
|
let (mut app, _) = test_app().await;
|
|
let tok = admin_token();
|
|
|
|
let key1 = format!("test.{}", &uuid::Uuid::now_v7().to_string()[..8]);
|
|
let key2 = format!("test.{}", &uuid::Uuid::now_v7().to_string()[..8]);
|
|
|
|
let (status, body) = send(
|
|
&mut app,
|
|
put_json_auth(
|
|
"/api/v1/admin/options",
|
|
json!({"options": {key1: "Val1", key2: "Val2"}}),
|
|
&tok,
|
|
),
|
|
)
|
|
.await;
|
|
assert!(status.is_success(), "batch update: {status} {body:?}");
|
|
}
|