This project provides real-world code examples for the blog post My Tests Are Broken Again.
You should start by reading the tests.
Then, you should see how the Test Driver works under the hood.
We have two categories of data-types in the project:
- Models - the internal representation of the state. The components and store are using these data-types.
- Contracts - the representation of the persisted data, as we receive it from our back-end. Only the data-retrieval layer uses these types.
When data arrives from the back-end, we convert the contracts into models.
Notice that the Test Driver is coupled to the contract between the front-end and back-end: no model is imported into the Test Driver. Instead, we are only using Contracts (dataview, message).