| 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;// }
 |