Remove stripped module
This commit is contained in:
		
							parent
							
								
									a317ae6340
								
							
						
					
					
						commit
						9478050792
					
				| @ -155,7 +155,6 @@ pub mod room; | ||||
| pub mod room_key; | ||||
| pub mod room_key_request; | ||||
| pub mod sticker; | ||||
| // pub mod stripped;
 | ||||
| pub mod tag; | ||||
| pub mod typing; | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										143
									
								
								src/stripped.rs
									
									
									
									
									
								
							
							
						
						
									
										143
									
								
								src/stripped.rs
									
									
									
									
									
								
							| @ -307,145 +307,4 @@ mod raw { | ||||
| } | ||||
| 
 | ||||
| #[cfg(test)] | ||||
| mod tests { | ||||
|     use std::convert::TryFrom; | ||||
| 
 | ||||
|     use js_int::UInt; | ||||
|     use ruma_identifiers::UserId; | ||||
|     use serde_json::{from_value as from_json_value, json, to_value as to_json_value}; | ||||
| 
 | ||||
|     use super::{AnyStrippedStateEvent, StrippedRoomName, StrippedRoomTopic}; | ||||
|     use crate::{ | ||||
|         room::{join_rules::JoinRule, topic::TopicEventContent}, | ||||
|         EventJson, EventType, | ||||
|     }; | ||||
| 
 | ||||
|     #[test] | ||||
|     fn serialize_stripped_state_event() { | ||||
|         let content = StrippedRoomTopic { | ||||
|             content: TopicEventContent { | ||||
|                 topic: "Testing room".to_string(), | ||||
|             }, | ||||
|             state_key: "".to_string(), | ||||
|             event_type: EventType::RoomTopic, | ||||
|             sender: UserId::try_from("@example:localhost").unwrap(), | ||||
|         }; | ||||
| 
 | ||||
|         let event = AnyStrippedStateEvent::RoomTopic(content); | ||||
| 
 | ||||
|         let json_data = json!({ | ||||
|             "content": { | ||||
|                 "topic": "Testing room" | ||||
|             }, | ||||
|             "type": "m.room.topic", | ||||
|             "state_key": "", | ||||
|             "sender": "@example:localhost" | ||||
|         }); | ||||
| 
 | ||||
|         assert_eq!(to_json_value(&event).unwrap(), json_data); | ||||
|     } | ||||
| 
 | ||||
|     #[test] | ||||
|     fn deserialize_stripped_state_events() { | ||||
|         let name_event = json!({ | ||||
|             "type": "m.room.name", | ||||
|             "state_key": "", | ||||
|             "sender": "@example:localhost", | ||||
|             "content": { "name": "Ruma" } | ||||
|         }); | ||||
| 
 | ||||
|         let join_rules_event = json!({ | ||||
|             "type": "m.room.join_rules", | ||||
|             "state_key": "", | ||||
|             "sender": "@example:localhost", | ||||
|             "content": { "join_rule": "public" } | ||||
|         }); | ||||
| 
 | ||||
|         let avatar_event = json!({ | ||||
|             "type": "m.room.avatar", | ||||
|             "state_key": "", | ||||
|             "sender": "@example:localhost", | ||||
|             "content": { | ||||
|                 "info": { | ||||
|                     "h": 128, | ||||
|                     "w": 128, | ||||
|                     "mimetype": "image/jpeg", | ||||
|                     "size": 1024, | ||||
|                     "thumbnail_info": { | ||||
|                         "h": 16, | ||||
|                         "w": 16, | ||||
|                         "mimetype": "image/jpeg", | ||||
|                         "size": 32 | ||||
|                     }, | ||||
|                     "thumbnail_url": "https://example.com/image-thumbnail.jpg" | ||||
|                 }, | ||||
|                 "thumbnail_info": { | ||||
|                     "h": 16, | ||||
|                     "w": 16, | ||||
|                     "mimetype": "image/jpeg", | ||||
|                     "size": 32 | ||||
|                 }, | ||||
|                 "thumbnail_url": "https://example.com/image-thumbnail.jpg", | ||||
|                 "url": "https://example.com/image.jpg" | ||||
|             } | ||||
|         }); | ||||
| 
 | ||||
|         match from_json_value::<EventJson<_>>(name_event.clone()) | ||||
|             .unwrap() | ||||
|             .deserialize() | ||||
|             .unwrap() | ||||
|         { | ||||
|             AnyStrippedStateEvent::RoomName(event) => { | ||||
|                 assert_eq!(event.content.name, Some("Ruma".to_string())); | ||||
|                 assert_eq!(event.event_type, EventType::RoomName); | ||||
|                 assert_eq!(event.state_key, ""); | ||||
|                 assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|             } | ||||
|             _ => unreachable!(), | ||||
|         }; | ||||
| 
 | ||||
|         // Ensure `StrippedStateContent` can be parsed, not just `StrippedState`.
 | ||||
|         assert!(from_json_value::<EventJson<StrippedRoomName>>(name_event) | ||||
|             .unwrap() | ||||
|             .deserialize() | ||||
|             .is_ok()); | ||||
| 
 | ||||
|         match from_json_value::<EventJson<_>>(join_rules_event) | ||||
|             .unwrap() | ||||
|             .deserialize() | ||||
|             .unwrap() | ||||
|         { | ||||
|             AnyStrippedStateEvent::RoomJoinRules(event) => { | ||||
|                 assert_eq!(event.content.join_rule, JoinRule::Public); | ||||
|                 assert_eq!(event.event_type, EventType::RoomJoinRules); | ||||
|                 assert_eq!(event.state_key, ""); | ||||
|                 assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|             } | ||||
|             _ => unreachable!(), | ||||
|         }; | ||||
| 
 | ||||
|         match from_json_value::<EventJson<_>>(avatar_event) | ||||
|             .unwrap() | ||||
|             .deserialize() | ||||
|             .unwrap() | ||||
|         { | ||||
|             AnyStrippedStateEvent::RoomAvatar(event) => { | ||||
|                 let image_info = event.content.info.unwrap(); | ||||
| 
 | ||||
|                 assert_eq!(image_info.height.unwrap(), UInt::try_from(128).unwrap()); | ||||
|                 assert_eq!(image_info.width.unwrap(), UInt::try_from(128).unwrap()); | ||||
|                 assert_eq!(image_info.mimetype.unwrap(), "image/jpeg"); | ||||
|                 assert_eq!(image_info.size.unwrap(), UInt::try_from(1024).unwrap()); | ||||
|                 assert_eq!( | ||||
|                     image_info.thumbnail_info.unwrap().size.unwrap(), | ||||
|                     UInt::try_from(32).unwrap() | ||||
|                 ); | ||||
|                 assert_eq!(event.content.url, "https://example.com/image.jpg"); | ||||
|                 assert_eq!(event.event_type, EventType::RoomAvatar); | ||||
|                 assert_eq!(event.state_key, ""); | ||||
|                 assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|             } | ||||
|             _ => unreachable!(), | ||||
|         }; | ||||
|     } | ||||
| } | ||||
| mod tests {} | ||||
|  | ||||
							
								
								
									
										138
									
								
								tests/stripped.rs.bk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										138
									
								
								tests/stripped.rs.bk
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,138 @@ | ||||
| use std::convert::TryFrom; | ||||
| 
 | ||||
| use js_int::UInt; | ||||
| use ruma_events::{ | ||||
|     room::{join_rules::JoinRule, topic::TopicEventContent}, | ||||
|     AnyStrippedStateEvent, EventJson, EventType, | ||||
| }; | ||||
| use ruma_identifiers::UserId; | ||||
| use serde_json::{from_value as from_json_value, json, to_value as to_json_value}; | ||||
| 
 | ||||
| #[test] | ||||
| fn serialize_stripped_state_event() { | ||||
|     let content = StrippedRoomTopic { | ||||
|         content: TopicEventContent { | ||||
|             topic: "Testing room".to_string(), | ||||
|         }, | ||||
|         state_key: "".to_string(), | ||||
|         event_type: EventType::RoomTopic, | ||||
|         sender: UserId::try_from("@example:localhost").unwrap(), | ||||
|     }; | ||||
| 
 | ||||
|     let event = AnyStrippedStateEvent::RoomTopic(content); | ||||
| 
 | ||||
|     let json_data = json!({ | ||||
|         "content": { | ||||
|             "topic": "Testing room" | ||||
|         }, | ||||
|         "type": "m.room.topic", | ||||
|         "state_key": "", | ||||
|         "sender": "@example:localhost" | ||||
|     }); | ||||
| 
 | ||||
|     assert_eq!(to_json_value(&event).unwrap(), json_data); | ||||
| } | ||||
| 
 | ||||
| #[test] | ||||
| fn deserialize_stripped_state_events() { | ||||
|     let name_event = json!({ | ||||
|         "type": "m.room.name", | ||||
|         "state_key": "", | ||||
|         "sender": "@example:localhost", | ||||
|         "content": { "name": "Ruma" } | ||||
|     }); | ||||
| 
 | ||||
|     let join_rules_event = json!({ | ||||
|         "type": "m.room.join_rules", | ||||
|         "state_key": "", | ||||
|         "sender": "@example:localhost", | ||||
|         "content": { "join_rule": "public" } | ||||
|     }); | ||||
| 
 | ||||
|     let avatar_event = json!({ | ||||
|         "type": "m.room.avatar", | ||||
|         "state_key": "", | ||||
|         "sender": "@example:localhost", | ||||
|         "content": { | ||||
|             "info": { | ||||
|                 "h": 128, | ||||
|                 "w": 128, | ||||
|                 "mimetype": "image/jpeg", | ||||
|                 "size": 1024, | ||||
|                 "thumbnail_info": { | ||||
|                     "h": 16, | ||||
|                     "w": 16, | ||||
|                     "mimetype": "image/jpeg", | ||||
|                     "size": 32 | ||||
|                 }, | ||||
|                 "thumbnail_url": "https://example.com/image-thumbnail.jpg" | ||||
|             }, | ||||
|             "thumbnail_info": { | ||||
|                 "h": 16, | ||||
|                 "w": 16, | ||||
|                 "mimetype": "image/jpeg", | ||||
|                 "size": 32 | ||||
|             }, | ||||
|             "thumbnail_url": "https://example.com/image-thumbnail.jpg", | ||||
|             "url": "https://example.com/image.jpg" | ||||
|         } | ||||
|     }); | ||||
| 
 | ||||
|     match from_json_value::<EventJson<_>>(name_event.clone()) | ||||
|         .unwrap() | ||||
|         .deserialize() | ||||
|         .unwrap() | ||||
|     { | ||||
|         AnyStrippedStateEvent::RoomName(event) => { | ||||
|             assert_eq!(event.content.name, Some("Ruma".to_string())); | ||||
|             assert_eq!(event.event_type, EventType::RoomName); | ||||
|             assert_eq!(event.state_key, ""); | ||||
|             assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|         } | ||||
|         _ => unreachable!(), | ||||
|     }; | ||||
| 
 | ||||
|     // Ensure `StrippedStateContent` can be parsed, not just `StrippedState`. | ||||
|     assert!(from_json_value::<EventJson<StrippedRoomName>>(name_event) | ||||
|         .unwrap() | ||||
|         .deserialize() | ||||
|         .is_ok()); | ||||
| 
 | ||||
|     match from_json_value::<EventJson<_>>(join_rules_event) | ||||
|         .unwrap() | ||||
|         .deserialize() | ||||
|         .unwrap() | ||||
|     { | ||||
|         AnyStrippedStateEvent::RoomJoinRules(event) => { | ||||
|             assert_eq!(event.content.join_rule, JoinRule::Public); | ||||
|             assert_eq!(event.event_type, EventType::RoomJoinRules); | ||||
|             assert_eq!(event.state_key, ""); | ||||
|             assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|         } | ||||
|         _ => unreachable!(), | ||||
|     }; | ||||
| 
 | ||||
|     match from_json_value::<EventJson<_>>(avatar_event) | ||||
|         .unwrap() | ||||
|         .deserialize() | ||||
|         .unwrap() | ||||
|     { | ||||
|         AnyStrippedStateEvent::RoomAvatar(event) => { | ||||
|             let image_info = event.content.info.unwrap(); | ||||
| 
 | ||||
|             assert_eq!(image_info.height.unwrap(), UInt::try_from(128).unwrap()); | ||||
|             assert_eq!(image_info.width.unwrap(), UInt::try_from(128).unwrap()); | ||||
|             assert_eq!(image_info.mimetype.unwrap(), "image/jpeg"); | ||||
|             assert_eq!(image_info.size.unwrap(), UInt::try_from(1024).unwrap()); | ||||
|             assert_eq!( | ||||
|                 image_info.thumbnail_info.unwrap().size.unwrap(), | ||||
|                 UInt::try_from(32).unwrap() | ||||
|             ); | ||||
|             assert_eq!(event.content.url, "https://example.com/image.jpg"); | ||||
|             assert_eq!(event.event_type, EventType::RoomAvatar); | ||||
|             assert_eq!(event.state_key, ""); | ||||
|             assert_eq!(event.sender.to_string(), "@example:localhost"); | ||||
|         } | ||||
|         _ => unreachable!(), | ||||
|     }; | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user