123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- use crate::task_test::script::{
- make_text_background_task, make_text_user_interactive_task, SearchScript::*, SearchTest,
- };
- #[tokio::test]
- async fn task_add_single_background_task_test() {
- let test = SearchTest::new().await;
- let (task, ret) = make_text_background_task(test.next_task_id().await, "");
- test.run_scripts(vec![AddTask { task }]).await;
- let result = ret.await.unwrap();
- assert!(result.state.is_done())
- }
- #[tokio::test]
- async fn task_add_multiple_background_tasks_test() {
- let test = SearchTest::new().await;
- let (task_1, ret_1) = make_text_background_task(test.next_task_id().await, "");
- let (task_2, ret_2) = make_text_background_task(test.next_task_id().await, "");
- let (task_3, ret_3) = make_text_background_task(test.next_task_id().await, "");
- test.run_scripts(vec![
- AddTask { task: task_1 },
- AddTask { task: task_2 },
- AddTask { task: task_3 },
- AssertExecuteOrder {
- execute_order: vec![3, 2, 1],
- rets: vec![ret_1, ret_2, ret_3],
- },
- ])
- .await;
- }
- #[tokio::test]
- async fn task_add_multiple_user_interactive_tasks_test() {
- let test = SearchTest::new().await;
- let (task_1, ret_1) = make_text_user_interactive_task(test.next_task_id().await, "");
- let (task_2, ret_2) = make_text_user_interactive_task(test.next_task_id().await, "");
- let (task_3, ret_3) = make_text_user_interactive_task(test.next_task_id().await, "");
- test.run_scripts(vec![
- AddTask { task: task_1 },
- AddTask { task: task_2 },
- AddTask { task: task_3 },
- AssertExecuteOrder {
- execute_order: vec![3, 2, 1],
- rets: vec![ret_1, ret_2, ret_3],
- },
- ])
- .await;
- }
- #[tokio::test]
- async fn task_add_multiple_different_kind_tasks_test() {
- let test = SearchTest::new().await;
- let (task_1, ret_1) = make_text_background_task(test.next_task_id().await, "");
- let (task_2, ret_2) = make_text_user_interactive_task(test.next_task_id().await, "");
- let (task_3, ret_3) = make_text_background_task(test.next_task_id().await, "");
- test.run_scripts(vec![
- AddTask { task: task_1 },
- AddTask { task: task_2 },
- AddTask { task: task_3 },
- AssertExecuteOrder {
- execute_order: vec![2, 3, 1],
- rets: vec![ret_1, ret_2, ret_3],
- },
- ])
- .await;
- }
- #[tokio::test]
- async fn task_add_multiple_different_kind_tasks_test2() {
- let test = SearchTest::new().await;
- let mut tasks = vec![];
- let mut rets = vec![];
- for i in 0..10 {
- let (task, ret) = if i % 2 == 0 {
- make_text_background_task(test.next_task_id().await, "")
- } else {
- make_text_user_interactive_task(test.next_task_id().await, "")
- };
- tasks.push(task);
- rets.push(ret);
- }
- test.run_scripts(vec![
- AddTasks { tasks },
- AssertExecuteOrder {
- execute_order: vec![10, 8, 6, 4, 2, 9, 7, 5, 3, 1],
- rets,
- },
- ])
- .await;
- }
- // #[tokio::test]
- // async fn task_add_1000_tasks_test() {
- // let test = SearchTest::new().await;
- // let mut tasks = vec![];
- // let mut execute_order = vec![];
- // let mut rets = vec![];
- //
- // for i in 1..1000 {
- // let (task, ret) = make_text_background_task(test.next_task_id().await, "");
- // execute_order.push(i);
- // tasks.push(task);
- // rets.push(ret);
- // }
- // execute_order.reverse();
- //
- // test.run_scripts(vec![AddTasks { tasks }, AssertExecuteOrder { execute_order, rets }])
- // .await;
- // }
|