Expose undiff to JS

This commit is contained in:
Andras Schmelczer 2025-11-16 15:02:31 +00:00
commit ee6277c13f
5 changed files with 64 additions and 21 deletions

View file

@ -50,16 +50,16 @@ fn test_document_one_way_with_serialisation() {
);
let serialised_left =
serde_yaml::from_str(&serde_yaml::to_string(&left_operations.to_changes()).unwrap())
serde_yaml::from_str(&serde_yaml::to_string(&left_operations.to_diff()).unwrap())
.unwrap();
let serialised_right =
serde_yaml::from_str(&serde_yaml::to_string(&right_operations.to_changes()).unwrap())
serde_yaml::from_str(&serde_yaml::to_string(&right_operations.to_diff()).unwrap())
.unwrap();
let restored_left_operations =
EditedText::from_changes(&parent, serialised_left, &*BuiltinTokenizer::Word);
EditedText::from_diff(&parent, serialised_left, &*BuiltinTokenizer::Word);
let restored_right_operations =
EditedText::from_changes(&parent, serialised_right, &*BuiltinTokenizer::Word);
EditedText::from_diff(&parent, serialised_right, &*BuiltinTokenizer::Word);
doc.assert_eq_without_cursors(
&restored_left_operations

View file

@ -56,11 +56,11 @@ fn test_merge_binary() {
}
#[wasm_bindgen_test] // JsValue isn't supported outside of wasm
fn test_get_compact_diff() {
fn test_diff() {
let parent = "hello ";
let changed = "world";
let result = get_compact_diff(parent, &changed.into(), BuiltinTokenizer::Word);
let result = diff(parent, &changed.into(), BuiltinTokenizer::Word);
assert_eq!(result.len(), 2);
let first: i64 = result[0].clone().try_into().unwrap();