xotl.crdt.testing.base – Common definition to tests CRDTs

We use hypothesis.stateful to create sequences of possible actions over any replica.

There are two approaches:

Based on a test-model

Each action is also recorded in a model object that maintains the expected state a replica must reach when synchronized.

Based on a full synchronization

The synchronization is done by a gossip protocol; after synchronization all replicas must have the same value. Notice this is not coordination for agreement.