meshviz-studio-decentralize.../tests/test_crdt.py

15 lines
448 B
Python

from meshviz.crdt import DeltaCRDT
def test_merge_two_sources_merges_both_deltas():
a = DeltaCRDT()
b = DeltaCRDT()
id_a = a.add_local_delta("dev1", 1.0, 10.0)
id_b = b.add_local_delta("dev1", 2.0, 20.0)
remote = b.export_state()
a.merge(remote)
state = a.export_state()
assert "dev1" in state
assert len(state["dev1"]) >= 2
assert id_a in (d[2] for d in state["dev1"]) # ensure original delta_id present