Skip to content

Latest commit

 

History

History
87 lines (57 loc) · 2.06 KB

CONTRIBUTING.asciidoc

File metadata and controls

87 lines (57 loc) · 2.06 KB

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

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