use serde::Deserialize;
#[derive(Debug, Deserialize, Default, Clone)]
pub struct AuthMeResponse {
#[serde(default)]
pub email: Option<String>,
#[serde(default)]
pub id: Option<String>,
#[serde(default)]
pub user_db_id: Option<String>,
#[serde(default)]
pub organization_id: Option<String>,
#[serde(default)]
pub organization_name: Option<String>,
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn auth_me_response_default_is_all_none() {
let r = AuthMeResponse::default();
assert!(r.email.is_none());
assert!(r.organization_id.is_none());
}
#[test]
fn auth_me_response_parses_minimal_payload() {
let raw = r#"{"email": "alice@example.com"}"#;
let r: AuthMeResponse = serde_json::from_str(raw).unwrap();
assert_eq!(r.email.as_deref(), Some("alice@example.com"));
}
}