Here you can find an in-depth overview of the inner workings of Gravatar for Android. It is designed for contributors and maintainers who want to understand the app's architecture, design decisions, and implementation details. This document covers key topics such as structure, testing, release process, and more. Whether you're debugging, extending functionality, or simply exploring the codebase, this guide will help you navigate and work effectively with the project's technical foundations.
To run unit tests, use the following command:
./gradlew testDebugThe project uses Roborazzi for screenshot testing. Screenshots are saved in the screenshotTests/roborazzi directory of each module.
To run screenshot tests:
- Execute the tests with the
screenshotparameter - Check the generated screenshots in the output directory
Example:
./gradlew verifyRoborazziDebug -Pscreenshot
./gradlew :homeUi:verifyRoborazziDebug -PscreenshotIf you need to update the screenshots, use the recordRoborazziDebug task:
./gradlew recordRoborazziDebug -Pscreenshot
./gradlew :homeUi:recordRoborazziDebug -PscreenshotThe project uses Detekt for static code analysis with the Ktlint wrapper. To run Detekt:
./gradlew detektor
./gradlew detekt --auto-correct