Skip to content

Latest commit

 

History

History
91 lines (59 loc) · 2.17 KB

File metadata and controls

91 lines (59 loc) · 2.17 KB

This document is meant to help contributors working on the project. For more detailed information, please refer to the project wiki.

Code of Conduct

Please read the Code of Conduct carefully before attempting to make any contributions.

Required Tools

  • Android SDK

  • JDK 8, 11, 17

Android SDK Setup

If you haven’t installed the Android SDK locally, you can do so for macOS using Homebrew:

brew install android-commandlinetools

Then, set the ANDROID_HOME environment variable in your shell by adding the following line to your profile file (e.g., .zshrc, .bash_profile, .bashrc):

The ANDROID_HOME path is where android-commandlinetools gets installed to by Homebrew

export ANDROID_HOME="/<path>/<to>/<your>/android-commandlinetools"

IMPORTANT - Make sure to restart IntelliJ after ANDROID_HOME is set, otherwise, tests will continue to fail when invoked via IntelliJ.

Install to Maven Local

To install the project to Maven Local, run the following command:

./gradlew installForFuncTest

Running Tests

To execute all checks, run:

./gradlew check

Unit Tests

Run unit tests with the following command:

./gradlew test

Functional Tests

To run all functional tests against the full test matrix (all supported versions of AGP and Gradle), use the following (please be aware, this can take a long time):

./gradlew functionalTest

For a quicker run against the latest-supported combination of AGP and Gradle, use:

./gradlew functionalTest -DfuncTest.quick

Alternatively:

./gradlew quickFunctionalTest

Pro tip: You can also use ./gradlew qFT for brevity.

To run tests against a specific subset of the suite, use Gradle’s --tests option. For example:

./gradlew functionalTest --tests AnnotationProcessorSpec

For a combination of quick tests and test filtering, use the more verbose quick-test syntax:

./gradlew functionalTest --tests AnnotationProcessorSpec -DfuncTest.quick