| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164 | 
							- use crate::new_document::script::DocumentEditorTest;
 
- use crate::new_document::script::EditScript::*;
 
- use lib_ot::text_delta::DeltaTextOperationBuilder;
 
- #[tokio::test]
 
- async fn document_initialize_test() {
 
-   let scripts = vec![AssertContent {
 
-     expected: r#"{"document":{"type":"editor","children":[{"type":"text"}]}}"#,
 
-   }];
 
-   DocumentEditorTest::new().await.run_scripts(scripts).await;
 
- }
 
- #[tokio::test]
 
- async fn document_insert_text_test() {
 
-   let delta = DeltaTextOperationBuilder::new()
 
-     .insert("Hello world")
 
-     .build();
 
-   let expected = r#"{
 
-   "document": {
 
-     "type": "editor",
 
-     "children": [
 
-       {
 
-         "type": "text",
 
-         "delta": [
 
-           {
 
-             "insert": "Hello world"
 
-           }
 
-         ]
 
-       },
 
-       {
 
-         "type": "text"
 
-       }
 
-     ]
 
-   }
 
- }"#;
 
-   let scripts = vec![
 
-     InsertText {
 
-       path: vec![0, 0].into(),
 
-       delta,
 
-     },
 
-     AssertPrettyContent { expected },
 
-   ];
 
-   DocumentEditorTest::new().await.run_scripts(scripts).await;
 
- }
 
- #[tokio::test]
 
- async fn document_update_text_test() {
 
-   let test = DocumentEditorTest::new().await;
 
-   let hello_world = "Hello world".to_string();
 
-   let scripts = vec![
 
-     UpdateText {
 
-       path: vec![0, 0].into(),
 
-       delta: DeltaTextOperationBuilder::new()
 
-         .insert(&hello_world)
 
-         .build(),
 
-     },
 
-     AssertPrettyContent {
 
-       expected: r#"{
 
-   "document": {
 
-     "type": "editor",
 
-     "children": [
 
-       {
 
-         "type": "text",
 
-         "delta": [
 
-           {
 
-             "insert": "Hello world"
 
-           }
 
-         ]
 
-       }
 
-     ]
 
-   }
 
- }"#,
 
-     },
 
-   ];
 
-   test.run_scripts(scripts).await;
 
-   let scripts = vec![
 
-     UpdateText {
 
-       path: vec![0, 0].into(),
 
-       delta: DeltaTextOperationBuilder::new()
 
-         .retain(hello_world.len())
 
-         .insert(", AppFlowy")
 
-         .build(),
 
-     },
 
-     AssertPrettyContent {
 
-       expected: r#"{
 
-   "document": {
 
-     "type": "editor",
 
-     "children": [
 
-       {
 
-         "type": "text",
 
-         "delta": [
 
-           {
 
-             "insert": "Hello world, AppFlowy"
 
-           }
 
-         ]
 
-       }
 
-     ]
 
-   }
 
- }"#,
 
-     },
 
-   ];
 
-   test.run_scripts(scripts).await;
 
- }
 
- #[tokio::test]
 
- async fn document_delete_text_test() {
 
-   let expected = r#"{
 
-   "document": {
 
-     "type": "editor",
 
-     "children": [
 
-       {
 
-         "type": "text",
 
-         "delta": [
 
-           {
 
-             "insert": "Hello"
 
-           }
 
-         ]
 
-       }
 
-     ]
 
-   }
 
- }"#;
 
-   let hello_world = "Hello world".to_string();
 
-   let scripts = vec![
 
-     UpdateText {
 
-       path: vec![0, 0].into(),
 
-       delta: DeltaTextOperationBuilder::new()
 
-         .insert(&hello_world)
 
-         .build(),
 
-     },
 
-     UpdateText {
 
-       path: vec![0, 0].into(),
 
-       delta: DeltaTextOperationBuilder::new().retain(5).delete(6).build(),
 
-     },
 
-     AssertPrettyContent { expected },
 
-   ];
 
-   DocumentEditorTest::new().await.run_scripts(scripts).await;
 
- }
 
- #[tokio::test]
 
- async fn document_delete_node_test() {
 
-   let scripts = vec![
 
-     UpdateText {
 
-       path: vec![0, 0].into(),
 
-       delta: DeltaTextOperationBuilder::new()
 
-         .insert("Hello world")
 
-         .build(),
 
-     },
 
-     AssertContent {
 
-       expected: r#"{"document":{"type":"editor","children":[{"type":"text","delta":[{"insert":"Hello world"}]}]}}"#,
 
-     },
 
-     Delete {
 
-       path: vec![0, 0].into(),
 
-     },
 
-     AssertContent {
 
-       expected: r#"{"document":{"type":"editor"}}"#,
 
-     },
 
-   ];
 
-   DocumentEditorTest::new().await.run_scripts(scripts).await;
 
- }
 
 
  |