<commit_before>## Tasks

### Bash Tasks

There are no core Guerilla tasks of type "bash". Users may write custom bash tasks.

### JavaScript Tasks

- [`android-force-stop`](#android-force-stop)
- [`android-install`](#android-install)
- [`android-kill-monkey`](#android-kill-monkey)
- [`android-launch`](#android-launch)
- [`android-monkey`](#android-monkey)
- [`android-screenshot`](#android-screenshot)
- [`android-uninstall`](#android-uninstall)
- [`ant`](#ant)
- [`apk-size`](#apk-size)
- [`clean`](#clean)
- [`dex-method-counts`](#dex-method-counts)
- [`espresso`](#espresso)
- [`git-checkout`](#git-checkout)
- [`gradle`](#gradle)
- [`ios-extract-device-logs`](#ios-extract-device-logs)
- [`ios-install`](#ios-install)
- [`ios-uninstall`](#ios-uninstall)
- [`repo-checkout`](#repo-checkout)
- [`uiautomation`](#uiautomation)
- [`wait`](#wait)
- [`xcodebuild`](#xcodebuild)
- [`xcrun`](#xcrun)
- [`xctest`](#xctest)
- [`zip-results`](##zip-results)

======
#### android-force-stop

Terminates an Android process.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to terminate.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to terminate.

======
#### android-install

Installs an APK to an Android device.

- `apk_name` **String** - Name of the APK to install.

======
#### android-kill-monkey

Terminates any monkey processes running on an Android device.

======
#### android-launch

Launches an application on an Android device.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to launch.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to launch.

======
#### android-monkey

Installs an APK and runs a monkey test on an Android device. Outputs networks usage, memory usage and logcat.

- `apk_name` **String** - Name of the APK to test.
- `event_count` **Integer** - Number of events the monkey will generate.
- `throttle` **Integer** *Optional* - Inserts a fixed delay between events. You can use this option to slow down the monkey. If not specified, there is no delay and the events are generated as rapidly as possible.
- `seed` **Integer** *Optional* - Seed value for pseudo-random number generator. If you re-run the monkey with the same seed value, it will generate the same sequence of events.

======
#### android-screenshot

Outputs a screenshot of an Android device.

======
#### android-uninstall

Uninstalls an application from an Android device.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to uninstall.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to uninstall.

======
#### ant

Runs Ant.

- `ant_targets` **Array(String)** - Targets for Ant to run.
- `build_file` **String** *Optional* - Name of the build file relative to the project root. Defaults to build.xml.

======
#### apk-size

Calculates the size of an APK.

- `apk_name` **String** - Name of the APK to measure.
- `verify` **Object** *Optional*
    + `max_size` **Number** - Fails the task if the APK size exceeds this value.
    + `max_delta` **Number** - Fails the task if the APK size increased by this percentage value compared to the previous run.

======
#### clean

Cleans the working directory of the job.

======
#### dex-method-counts

Calculates the number of methods in an APK and outputs a breakdown report.

- `apk_name` **String** - Name of the APK to measure.
- `verify` **Object** *Optional*
    + `max_size` **Number** - Fails the task if the method count exceeds this value.
    + `max_delta` **Number** - Fails the task if the method count increased by this percentage value compared to the previous run.

======
#### espresso

Installs an APK and runs espresso tests on an Android device. Outputs network usage, memory usage and logcat.

- `apk_name` **String** - Name of APK to test.
- `test_apk_name` **String** - Name of test APK.
- `test_class` **String** *Optional* - Class of tests to run. Runs all tests if not provided.
- `test_name` **String** *Optional*  - Name of test to run. Only used if test_class is provided.

======
#### git-checkout

Checks out a project from GitHub.

- `checkout_url` **String** - URL of project to checkout from.
- `branch` **String** *Optional* - Branch of project to checkout. Defaults to the default branch.
- `project_root` **String** *Optional* - Path from the checkout root to the root of the project if they are different. Defaults to the checkout root.

======
#### gradle

Runs Gradle.

- `gradle_tasks` **Array(String)** - Tasks for Gradle to run.
- `build_file` **String** *Optional* - Name of the build file relative to the project root. Defaults to build.gradle.

======<commit_msg>whoops, left behind.<commit_after>## Tasks

### Bash Tasks

There are no core Guerilla tasks of type "bash". Users may write custom bash tasks.

### JavaScript Tasks

- [`android-force-stop`](#android-force-stop)
- [`android-install`](#android-install)
- [`android-kill-monkey`](#android-kill-monkey)
- [`android-launch`](#android-launch)
- [`android-monkey`](#android-monkey)
- [`android-screenshot`](#android-screenshot)
- [`android-uninstall`](#android-uninstall)
- [`ant`](#ant)
- [`apk-size`](#apk-size)
- [`clean`](#clean)
- [`dex-method-counts`](#dex-method-counts)
- [`espresso`](#espresso)
- [`git-checkout`](#git-checkout)
- [`gradle`](#gradle)
- [`ios-extract-device-logs`](#ios-extract-device-logs)
- [`ios-install`](#ios-install)
- [`ios-uninstall`](#ios-uninstall)
- [`repo-checkout`](#repo-checkout)
- [`uiautomation`](#uiautomation)
- [`wait`](#wait)
- [`xcodebuild`](#xcodebuild)
- [`xcrun`](#xcrun)
- [`xctest`](#xctest)
- [`zip-results`](##zip-results)

======
#### android-force-stop

Terminates an Android process.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to terminate.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to terminate.

======
#### android-install

Installs an APK to an Android device.

- `apk_name` **String** - Name of the APK to install.

======
#### android-kill-monkey

Terminates any monkey processes running on an Android device.

======
#### android-launch

Launches an application on an Android device.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to launch.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to launch.

======
#### android-monkey

Installs an APK and runs a monkey test on an Android device. Outputs networks usage, memory usage and logcat.

- `apk_name` **String** - Name of the APK to test.
- `event_count` **Integer** - Number of events the monkey will generate.
- `throttle` **Integer** *Optional* - Inserts a fixed delay between events. You can use this option to slow down the monkey. If not specified, there is no delay and the events are generated as rapidly as possible.
- `seed` **Integer** *Optional* - Seed value for pseudo-random number generator. If you re-run the monkey with the same seed value, it will generate the same sequence of events.

======
#### android-screenshot

Outputs a screenshot of an Android device.

======
#### android-uninstall

Uninstalls an application from an Android device.

- `apk_name` **String** *Required if package_name is not provided* - Name of the APK to uninstall.
- `package_name` **String** *Required if apk_name is not provided* - Name of the package to uninstall.

======
#### ant

Runs Ant.

- `ant_targets` **Array(String)** - Targets for Ant to run.
- `build_file` **String** *Optional* - Name of the build file relative to the project root. Defaults to build.xml.

======
#### apk-size

Calculates the size of an APK.

- `apk_name` **String** - Name of the APK to measure.
- `verify` **Object** *Optional*
    + `max_size` **Number** - Fails the task if the APK size exceeds this value.
    + `max_delta` **Number** - Fails the task if the APK size increased by this percentage value compared to the previous run.

======
#### clean

Cleans the working directory of the job.

======
#### dex-method-counts

Calculates the number of methods in an APK and outputs a breakdown report.

- `apk_name` **String** - Name of the APK to measure.
- `verify` **Object** *Optional*
    + `max_size` **Number** - Fails the task if the method count exceeds this value.
    + `max_delta` **Number** - Fails the task if the method count increased by this percentage value compared to the previous run.

======
#### espresso

Installs an APK and runs espresso tests on an Android device. Outputs network usage, memory usage and logcat.

- `apk_name` **String** - Name of APK to test.
- `test_apk_name` **String** - Name of test APK.
- `test_class` **String** *Optional* - Class of tests to run. Runs all tests if not provided.
- `test_name` **String** *Optional*  - Name of test to run. Only used if test_class is provided.

======
#### git-checkout

Checks out a project from GitHub.

- `checkout_url` **String** - URL of project to checkout from.
- `branch` **String** *Optional* - Branch of project to checkout. Defaults to the default branch.
- `project_root` **String** *Optional* - Path from the checkout root to the root of the project if they are different. Defaults to the checkout root.
- `pull` **Array** *Optional* - repo and branch arguments to a git pull command applied after the inital single branch clone. 

======
#### gradle

Runs Gradle.

- `gradle_tasks` **Array(String)** - Tasks for Gradle to run.
- `build_file` **String** *Optional* - Name of the build file relative to the project root. Defaults to build.gradle.

======
{'fraction_non_alphanumeric': 0.1543617240668179, 'fraction_numerical': 0.0, 'mean_word_length': 4.1783235451147895, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3655955', 'n_tokens_mistral': 3116, 'n_tokens_neox': 2962, 'n_words': 1139}