diff --git a/pkg/dds/CONTRIBUTING.md b/pkg/dds/CONTRIBUTING.md index ddad2147720..de7603b2f24 100644 --- a/pkg/dds/CONTRIBUTING.md +++ b/pkg/dds/CONTRIBUTING.md @@ -22,6 +22,14 @@ Then you can call `_fileLog('some print debugging message')`, and the log messag To get logging output in real time, run `tail -f /tmp/dds.log`. +## Running DDS tests + +From the `$DART_SDK_ROOT` directory, run: + +```shell + dart --packages=.dart_tool/package_config.json pkg/dds/test/path/to/your_test.dart +``` + ## Making changes to `package:dds` and `package:devtools_shared` **If you do not need to build the Dart SDK** to test your changes, you @@ -38,7 +46,7 @@ dependency_overrides: to adding the dependency override above, you will need to add a symbolic link to your local `devtools_shared` directory: -From the `sdk/` directory, run: +From the `$DART_SDK_ROOT` directory, run: ```shell rm -rf third_party/devtools/devtools_shared; ln -s /absolute_path_to/devtools/packages/devtools_shared third_party/devtools/devtools_shared @@ -51,3 +59,42 @@ To delete the symbolic link after you are done with development, run: ```shell rm -rf third_party/devtools/devtools_shared ``` + +## Making changes to `package:dds` and `devtools_app` + +To test any changes made in `devtools_app`, you will need to first build DevTools. + +- If you have not already, make sure to [set-up your DevTools development environment](https://github.com/flutter/devtools/blob/master/CONTRIBUTING.md#set-up-your-devtools-environment) so that you can use the `devtools_tool` command. + +- Then build DevTools with `devtools_tool build`. + +In the SDK, add a symbolic link to your local `devtools/packages/devtools_app/build/web` directory. + +From the `$DART_SDK_ROOT` directory, run: + +```shell +rm -rf third_party/devtools/web; +ln -s /absolute_path_to/devtools/devtools/packages/devtools_app/build/web third_party/devtools/web +``` + +**WARNING**: do not run `gclient sync -D` while the symbolic link is present, +as this could cause issues with your local `devtools_app` code. + +Then, build the Dart SDK. + +From the `$DART_SDK_ROOT` directory, run: + +```shell +./tools/build.py -mrelease -ax64 create_sdk +``` + +To delete the symbolic link after you are done with development, run: + +**WARNING**: do not run `gclient sync -D` while the symbolic link is present, +as this could cause issues with your local `devtools_app` code. + +```shell +rm -rf third_party/devtools/web +``` + +Then, run `gclient sync` to pull down the checked in version of DevTools.