fix: define DEFAULT_NEW_USER_MAX_COST_USD and repair test AppConfig initializers

Pre-existing breakage on this branch (introduced by the billing commits),
unrelated to the Gemini work but blocking both `cargo build` and
`cargo test`:

- admin/users.rs imported routes::auth::DEFAULT_NEW_USER_MAX_COST_USD,
  which was never defined. Add it to auth.rs as $1.0 (the billing design's
  "new users default to $1" starter allowance).
- AppConfig gained `payment` and `pixelle_video` fields but several test
  helpers still used struct literals missing them. Initialize both with
  Default::default() at each affected test site.
This commit is contained in:
boos
2026-06-22 08:39:17 +08:00
parent bfd804f719
commit 24a8dec151
9 changed files with 22 additions and 0 deletions
+2
View File
@@ -2840,6 +2840,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: Default::default(), comfyui: Default::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -412,6 +412,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: Default::default(), comfyui: Default::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+6
View File
@@ -19,6 +19,11 @@ use serde_json::{json, Value};
use std::net::{IpAddr, SocketAddr}; use std::net::{IpAddr, SocketAddr};
use tracing::{info, warn}; use tracing::{info, warn};
/// Default spending cap (USD) granted to a newly created user's auto-generated
/// API key. Per the billing design (新用户默认 $1 额度), new users start with a
/// $1 allowance on their default downstream key.
pub const DEFAULT_NEW_USER_MAX_COST_USD: f64 = 1.0;
// ── Request / Response types ───────────────────────────────────────── // ── Request / Response types ─────────────────────────────────────────
#[derive(Debug, Deserialize)] #[derive(Debug, Deserialize)]
@@ -1019,6 +1024,7 @@ mod tests {
}, },
comfyui: Default::default(), comfyui: Default::default(),
payment: Default::default(), payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -127,6 +127,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: ComfyUIConfig::default(), comfyui: ComfyUIConfig::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -1305,6 +1305,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: Default::default(), comfyui: Default::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -536,6 +536,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: Default::default(), comfyui: Default::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -2071,6 +2071,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui, comfyui,
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -2550,6 +2550,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: ComfyUIConfig::default(), comfyui: ComfyUIConfig::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {
+2
View File
@@ -696,6 +696,8 @@ mod tests {
template_proxy_url: None, template_proxy_url: None,
}, },
comfyui: ComfyUIConfig::default(), comfyui: ComfyUIConfig::default(),
payment: Default::default(),
pixelle_video: Default::default(),
}, },
pool, pool,
BuiltinKeys { BuiltinKeys {