use serde::Deserialize;
#[derive(Clone, Debug, PartialEq, Eq, Deserialize)]
pub struct ModelCard {
pub name: String,
pub description: String,
pub release_date: String,
}
#[derive(Clone, Debug, PartialEq, Eq, Deserialize)]
pub struct ListModelsResponse {
pub models: Vec<ModelCard>,
}
#[cfg(test)]
mod tests {
use super::*;
use serde_json::json;
#[test]
fn deserializes_models_array() {
let body = json!({
"models": [
{
"name": "jev-latest",
"description": "Flagship",
"release_date": "2026-01-01"
}
]
});
let parsed: ListModelsResponse = serde_json::from_value(body).unwrap();
assert_eq!(parsed.models[0].name, "jev-latest");
}
}