http://jmock.org/oopsla2004.pdf
https://jestjs.io/docs/mock-functions
https://joewalnes.com/tag/hamcrest/
https://github.com/hamcrest
https://martinfowler.com/articles/mocksArentStubs.html
https://blog.pragmatists.com/test-doubles-fakes-mocks-and-stubs-1a7491dfa3da