Skip to main content

gproxy_protocol/openai/video/
mod.rs

1mod request;
2mod response;
3mod types;
4
5pub use request::*;
6pub use response::*;
7pub use types::*;
8
9#[cfg(test)]
10mod tests {
11    use super::*;
12    use serde_json::json;
13
14    #[test]
15    fn video_models_round_trip_unknown_fields_and_variants() {
16        let request = json!({
17            "prompt":"continue",
18            "seconds":"24",
19            "video":{"id":"video_1", "future_ref":true},
20            "future_request":1
21        });
22        let parsed: ExtendVideoRequest = serde_json::from_value(request.clone()).unwrap();
23        assert_eq!(serde_json::to_value(parsed).unwrap(), request);
24
25        let response = json!({
26            "id":"video_1",
27            "created_at":1,
28            "model":"sora-future",
29            "object":"video",
30            "progress":42,
31            "seconds":"24",
32            "size":"2048x2048",
33            "status":"paused",
34            "future_response":{"x":1}
35        });
36        let parsed: Video = serde_json::from_value(response.clone()).unwrap();
37        assert_eq!(serde_json::to_value(parsed).unwrap(), response);
38    }
39}