The tests are important.
The library has extensive automatic tests coverage, but more will never hurt. However, avoid high maintenance (unit) tests, try to write tests without mocking anything and do not rely on internal components or their relation.
There is also a complex manual test, which needs to be run after larger changes, observing the performance and fault tolerance.
- Run
docker-compose up
indemoapp/docker
. - Start 2 instances of
com.transferwise.kafka.tkms.demoapp.Application
. One of them withnode2
Spring profile. - Run
com.transferwise.kafka.tkms.ComplexRealTest.complexTest
. - Create chaos - crash kafkas, crash apps, crash databases,...
- Check if test finishes correctly as fast as it did in master.
Repeat the tests for Postgres, by starting demoapp
with postgres
Spring profile.
Before raising a PR, please ensure that you have updated the project's version following semantic versioning, and have updated the CHANGELOG accordingly.