revision_test.rs 870 B

12345678910111213141516171819202122232425262728293031
  1. use flowy_collaboration::entities::revision::RevisionState;
  2. use flowy_test::doc_script::{EditorScript::*, *};
  3. #[tokio::test]
  4. async fn doc_sync_test() {
  5. let scripts = vec![
  6. InsertText("1", 0),
  7. InsertText("2", 1),
  8. InsertText("3", 2),
  9. AssertJson(r#"[{"insert":"123\n"}]"#),
  10. AssertNextRevId(None),
  11. ];
  12. EditorTest::new().await.run_scripts(scripts).await;
  13. }
  14. #[tokio::test]
  15. async fn doc_sync_retry_ws_conn() {
  16. let scripts = vec![
  17. InsertText("1", 0),
  18. StopWs,
  19. InsertText("2", 1),
  20. InsertText("3", 2),
  21. StartWs,
  22. WaitSyncFinished,
  23. AssertRevisionState(2, RevisionState::Ack),
  24. AssertRevisionState(3, RevisionState::Ack),
  25. AssertNextRevId(None),
  26. AssertJson(r#"[{"insert":"123\n"}]"#),
  27. ];
  28. EditorTest::new().await.run_scripts(scripts).await;
  29. }