questions: add async convert_stream test
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				continuous-integration/drone/push Build is passing
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	continuous-integration/drone/push Build is passing
				
			This commit is contained in:
		@@ -248,6 +248,48 @@ pub mod convert_async {
 | 
			
		||||
                })
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    #[cfg(test)]
 | 
			
		||||
    mod test {
 | 
			
		||||
        use crate::questions::test::convert_common::sample_batch;
 | 
			
		||||
 | 
			
		||||
        use super::*;
 | 
			
		||||
        use futures_util::{pin_mut, StreamExt};
 | 
			
		||||
        use insta::assert_yaml_snapshot;
 | 
			
		||||
 | 
			
		||||
        #[tokio::test]
 | 
			
		||||
        async fn test_convert_stream() {
 | 
			
		||||
            let source = futures::stream::once(async {
 | 
			
		||||
                (
 | 
			
		||||
                    String::from("test.json"),
 | 
			
		||||
                    Ok::<SourceQuestionsBatch, serde_json::Error>(sample_batch()),
 | 
			
		||||
                )
 | 
			
		||||
            });
 | 
			
		||||
 | 
			
		||||
            pin_mut!(source);
 | 
			
		||||
            let converter = QuestionsConverterAsync::from(source);
 | 
			
		||||
            let converter = converter.convert();
 | 
			
		||||
            let converted: Vec<_> = converter.collect().await;
 | 
			
		||||
            assert_yaml_snapshot!(converted, @r#"
 | 
			
		||||
            ---
 | 
			
		||||
            - id: Вопрос 1
 | 
			
		||||
              description: Сколько будет (2 * 2 * 2 + 2) * 2 * 2 + 2
 | 
			
		||||
              answer: "42"
 | 
			
		||||
              batch_info:
 | 
			
		||||
                filename: test.json
 | 
			
		||||
                description: Тестовый
 | 
			
		||||
                date: 00-000-2000
 | 
			
		||||
            - id: Вопрос 2
 | 
			
		||||
              description: Зимой и летом одним цветом
 | 
			
		||||
              answer: ёлка
 | 
			
		||||
              batch_info:
 | 
			
		||||
                filename: test.json
 | 
			
		||||
                description: Тестовый
 | 
			
		||||
                date: 00-000-2000
 | 
			
		||||
              
 | 
			
		||||
            "#);
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
#[cfg(feature = "convert_async")]
 | 
			
		||||
pub use convert_async::QuestionsConverterAsync;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user