application-services/testing/sync-test
lougeniaC64 e26940e509
Added autofill to sync manager functions and created autofill integration tests (#3996)
2021-04-07 19:16:33 -04:00
..
src Added autofill to sync manager functions and created autofill integration tests (#3996) 2021-04-07 19:16:33 -04:00
Cargo.toml Added autofill to sync manager functions and created autofill integration tests (#3996) 2021-04-07 19:16:33 -04:00
README.md Remove old node references from sync-test test code 2020-09-11 10:45:13 +10:00

README.md

End-to-End Tests for Sync

This package implements "end-to-end" integration tests for syncing various data types - two clients using a real live account and a real live sync server, exchanging data and asserting that the exchange works as intended.

Running the tests

Run the tests using cargo run.

Use cargo run -- --help to see the available options.

Adding tests

For each datatype managed by sync, there should be a suite of corresponding tests. To add some:

  1. In auth.rs, add support your sync engine to the TestClient struct.
  2. Create a file ./src/<datatype>.rs to hold the tests; logins.rs may provide a useful example.
  3. Create a test_<name> function for each scenario you want to exercise. The function should take two TestClient instances as arguments, and use them to drive a simulated sync between two clients.
  4. Define a get_test_group() function that returns your test scenarios in a TestGroup struct.
  5. Add your test group to the main function defined in main.rs for execution.