From d9a974472a643c5b20932dfebb3d4426ddddaa4c Mon Sep 17 00:00:00 2001 From: Waffle Date: Thu, 19 Sep 2019 01:34:35 +0300 Subject: [PATCH] Derive `From` for `InlineQueryResult` --- src/core/types/inline_query_result.rs | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/core/types/inline_query_result.rs b/src/core/types/inline_query_result.rs index 755528f5..f2151a06 100644 --- a/src/core/types/inline_query_result.rs +++ b/src/core/types/inline_query_result.rs @@ -11,7 +11,7 @@ use crate::core::types::{ }; /// This object represents one result of an inline query. -#[derive(Debug, Serialize, PartialEq, Clone)] +#[derive(Debug, Serialize, PartialEq, Clone, From)] #[serde(tag = "type")] #[serde(rename_all = "snake_case")] pub enum InlineQueryResult { @@ -55,6 +55,21 @@ mod tests { InlineQueryResult, InlineQueryResultCachedAudio, InputMessageContent, }; + #[test] + fn into() { + let structure = + InlineQueryResult::CachedAudio(InlineQueryResultCachedAudio { + id: String::from("id"), + audio_file_id: String::from("audio_file_id"), + caption: None, + parse_mode: None, + reply_markup: None, + input_message_content: None, + }); + + let _: InlineQueryResult = structure.into(); + } + #[test] fn cached_audio_min_serialize() { let structure =