| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 | use crate::revision_test::script::RevisionScript::*;use crate::revision_test::script::{InvalidRevisionObject, RevisionTest};#[tokio::test]async fn revision_write_to_disk_test() {    let test = RevisionTest::new_with_configuration(2).await;    let (base_rev_id, rev_id) = test.next_rev_id_pair();    test.run_script(AddLocalRevision {        content: "123".to_string(),        base_rev_id,        rev_id,    })    .await;    test.run_scripts(vec![        AssertNumberOfRevisionsInDisk { num: 0 },        WaitWhenWriteToDisk,        AssertNumberOfRevisionsInDisk { num: 1 },    ])    .await;}#[tokio::test]async fn revision_write_to_disk_with_merge_test() {    let test = RevisionTest::new_with_configuration(100).await;    for i in 0..1000 {        let (base_rev_id, rev_id) = test.next_rev_id_pair();        test.run_script(AddLocalRevision {            content: format!("{}", i),            base_rev_id,            rev_id,        })        .await;    }    test.run_scripts(vec![        AssertNumberOfRevisionsInDisk { num: 0 },        AssertNumberOfSyncRevisions { num: 10 },        WaitWhenWriteToDisk,        AssertNumberOfRevisionsInDisk { num: 10 },    ])    .await;}#[tokio::test]async fn revision_read_from_disk_test() {    let test = RevisionTest::new_with_configuration(2).await;    let (base_rev_id, rev_id) = test.next_rev_id_pair();    test.run_scripts(vec![        AddLocalRevision {            content: "123".to_string(),            base_rev_id,            rev_id,        },        AssertNumberOfRevisionsInDisk { num: 0 },        WaitWhenWriteToDisk,        AssertNumberOfRevisionsInDisk { num: 1 },    ])    .await;    let test = RevisionTest::new_with_other(test).await;    let (base_rev_id, rev_id) = test.next_rev_id_pair();    test.run_scripts(vec![        AssertNextSyncRevisionId { rev_id: Some(1) },        AddLocalRevision {            content: "456".to_string(),            base_rev_id,            rev_id,        },        AckRevision { rev_id: 1 },        AssertNextSyncRevisionId { rev_id: Some(rev_id) },    ])    .await;}#[tokio::test]async fn revision_read_from_disk_with_invalid_record_test() {    let test = RevisionTest::new_with_configuration(2).await;    let (base_rev_id, rev_id) = test.next_rev_id_pair();    test.run_scripts(vec![AddLocalRevision {        content: "123".to_string(),        base_rev_id,        rev_id,    }])    .await;    let (base_rev_id, rev_id) = test.next_rev_id_pair();    test.run_scripts(vec![        AddInvalidLocalRevision {            bytes: InvalidRevisionObject::new().to_bytes(),            base_rev_id,            rev_id,        },        WaitWhenWriteToDisk,    ])    .await;    let test = RevisionTest::new_with_other(test).await;    test.run_scripts(vec![AssertNextSyncRevisionContent {        expected: "123".to_string(),    }])    .await;}
 |