levibostian / Wendy-Android

Build offline first Android mobile apps. Remove loading screens, perform tasks instantly.
https://levibostian.github.io/Wendy-Android/wendy/
MIT License
64 stars 16 forks source link

Setup project for unit testing of the Wendy library #50

Open levibostian opened 5 years ago

levibostian commented 5 years ago

Wendy needs testing around it. At this time, that is all done through an example Android app in this repo that you can use to try out Wendy and see how it works. However, we all know unit tests are better.

The repo is currently not setup for good unit testing. It needs to be setup so that tests can then be created and added.

After this is done...

Grohden commented 5 years ago

For DI i would use Koin (just a suggestion) cuz it's really easy to make work and setup tests with

I also would use a linter in the project to enforce code quality (https://ktlint.github.io)

levibostian commented 5 years ago

Thanks for the suggestion, @Grohden. This issue is designed for adding unit testing specifically to the library. We should be able to pass in mocked objects into the constructors of each class in the Wendy library to test them without needing to use a library such as Koin or Dagger or others. The Wendy library itself should not need to have any 3rd party DI library installed to work.

However, for testing the example app, 3rd party libraries are acceptable. I only have experience with using Dagger2 but I have heard great things about Koin and am open to using that for tests in the example app.