composablesys/collabs

Collab implementation tests

mweidner037 opened this issue · 2 comments

  • Unit tests for all Collab operations. (We have these for many CRDTs but not all).
  • Unit tests for saving and loading.
  • Fuzz tests for Collab operations (do many ops concurrently and check eventual consistency).
  • Fuzz tests for saving and loading with parallel operations.

#245 adds tests for most CRDT operations, including most interesting concurrent pairs.

Still needs:

  • Unit tests of every method (especially accessors). See npm run coverage's HTML report.
  • Event tests
  • Non-CRDT tests, especially core features like serializers. (Note that crdt's coverage report doesn't count core code, but the crdt tests do exercise a lot of it.)
  • Tests with multiple messages in the same transaction, to make sure latter ones overwrite the former despite equal causal timestamps. (Esp. CVar, CRichText).