#[cfg(test)] mod tests { use serde_json::json; use crate::models::ChannelInfo; #[test] fn channel_info_defaults_is_member_for_legacy_payloads() { let channel: ChannelInfo = serde_json::from_value(json!({ "id": "9a1657ac-f7aa-5db0-b632-d8bbeb6dfb50", "name": "general", "channel_type": "stream", "visibility": "open", "description": "General discussion", "topic": null, "purpose": null, "member_count": 3, "last_message_at": null, "archived_at": null, "participants": [], "participant_pubkeys": [] })) .expect("legacy payload should deserialize"); assert!(channel.is_member); } }