Add a README with instructions for editing and running tests for the FGP (#161830)
Add a readme with some info. ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [ ] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [ ] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md --------- Co-authored-by: Gray Mackall <mackall@google.com> Co-authored-by: Reid Baker <hamilton.reid.baker@gmail.com>
This commit is contained in:
32
packages/flutter_tools/gradle/README.md
Normal file
32
packages/flutter_tools/gradle/README.md
Normal file
@@ -0,0 +1,32 @@
|
||||
## The Flutter Gradle Plugin
|
||||
|
||||
This directory contains Gradle code used to by the Flutter tool to build Flutter apps for Android,
|
||||
primarily the Flutter Gradle Plugin (FGP) - a Gradle plugin built on top of Gradle and the Android
|
||||
Gradle Plugin (AGP).
|
||||
|
||||
### Editing in Android Studio
|
||||
|
||||
To get code completion in Android Studio, you must open a new Android Studio window with this
|
||||
directory as the root. Code completion will not work when navigating to files
|
||||
in an Android Studio window opened at the root of the entire Flutter repo.
|
||||
|
||||
### Contributing
|
||||
|
||||
The Flutter Gradle Plugin is [currently being re-written](https://github.com/flutter/flutter/issues/121541) from Groovy to Kotlin
|
||||
(Kotlin source specifically, i.e. not `.kts`). As such, outside of critical bug fixes,
|
||||
new contributions will only be accepted in `src/main/kotlin` (and `src/test/kotlin`).
|
||||
|
||||
### Testing
|
||||
|
||||
Tests can be run in Android Studio, or directly with Gradle: `./gradle test`
|
||||
(note that this directory does not contain a version controlled Gradle file. You can find one in
|
||||
the engines `third_party` directory at
|
||||
`<flutter_root>/engine/src/flutter/third_party/gradle/bin/gradle`).
|
||||
|
||||
Alternatively, you can run all the tests in one file by passing in the fully qualified class name,
|
||||
e.g. `./gradlew test --tests com.flutter.gradle.BaseApplicationNameHandlerTest`, or one test in
|
||||
one file by passing in the fully qualified class name followed by the method name,
|
||||
e.g `./gradlew test --tests "com.flutter.gradle.BaseApplicationNameHandlerTest.setBaseName respects Flutter tool property"`.
|
||||
|
||||
Sometimes changing a test name and then running it will cause an IDE error. To get Android Studio back
|
||||
to a good state on Mac, run `Help > "Repair IDE"`, and then in the popup window `"Rescan project indexes > Everything works now."`
|
||||
Reference in New Issue
Block a user