busybee
busybee copied to clipboard
BusyBee is an alternative API for IdlingResources in Espresso tests
see https://docs.gradle.org/current/userguide/custom_plugins.html#sec:precompiled_plugins
We want to avoid calling `thing.slowToString()` in release builds. ```kotlin busyBee.busyWith(thing.slowToString()); try { thing.process(); } finally { // Espresso will continue busyBee.completed(thing.slowToString()); } ``` maybe something like: ```kotlin // {...
There might be testing use cases for `awaitNotBusy`/`awaitBusy` blocking methods for testing your busybee intergration.
If you are making a library (e.g. `busybee-rxjava`) that provides an integration of BusyBee with another lib (e.g. RxJava) you will probably want to be able to get a `TestBusyBee`...
See https://developer.android.com/topic/libraries/app-startup
The `operation` is only needed when tests are running, so we might consider changing the API to allow the `operation` to be lazily created.
Right now there is a fixed list of categories (`GENERAL`, `NETWORK`, etc), should allow applications to have default categories.