Update DDS CONTRIBUTING docs
Change-Id: Ia92b06a5f18eb3e090157d4df5f509297b70958c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/374121
Reviewed-by: Kenzie Davisson <kenzieschmoll@google.com>
Reviewed-by: Ben Konyi <bkonyi@google.com>
Commit-Queue: Elliott Brooks <elliottbrooks@google.com>
diff --git a/pkg/dds/CONTRIBUTING.md b/pkg/dds/CONTRIBUTING.md
index ddad214..de7603b 100644
--- a/pkg/dds/CONTRIBUTING.md
+++ b/pkg/dds/CONTRIBUTING.md
@@ -22,6 +22,14 @@
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 @@
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 @@
```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.