Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(10)

Unified Diff: third_party/pkg/angular/DEVELOPER.md

Issue 176943008: Update the Angular/DI tests to latest from github. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/pkg/angular/DEVELOPER.md
diff --git a/third_party/pkg/angular/DEVELOPER.md b/third_party/pkg/angular/DEVELOPER.md
new file mode 100644
index 0000000000000000000000000000000000000000..ec2f93254e0ae90ef44d7966098466d76af0c096
--- /dev/null
+++ b/third_party/pkg/angular/DEVELOPER.md
@@ -0,0 +1,167 @@
+# Building and Testing AngularDart
+
+This document describes how to set up your development environment to build and test AngularDart, and
+explains the basic mechanics of using `git`, `node`, and `npm`.
+
+See the [contributing guidelines](https://github.com/angular/angular.dart/blob/master/CONTRIBUTING.md) for how to contribute your own code to
+
+1. [Prerequisite Software](#prerequisite-software)
+2. [Getting the Sources](#getting-the-sources)
+3. [Environment Variable Setup](#environment-variable-setup)
+4. [Installing NPM Modules and Dart Packages](#installing-npm-modules-and-dart-packages)
+5. [Running Tests Locally](#running-tests-locally)
+6. [Continuous Integration using Travis](#continuous-integration-using-travis)
+
+## Prerequisite Software
+
+Before you can build and test AngularDart, you must install and configure the
+following products on your development machine:
+
+* [Dart](https://www.dartlang.org/): as can be expected, AngularDart requires
+ an installation of the Dart-SDK and Dartium (a version of
+ [Chromium](http://www.chromium.org) with native support for Dart through the
+ Dart VM). One of the **simplest** ways to get both is to install the **Dart
+ Editor bundle**, which includes the editor, sdk and Dartium. See the [Dart
+ tools download page for
+ instructions](https://www.dartlang.org/tools/download.html).
+
+* [Git](http://git-scm.com/) and/or the **Github app** (for
+ [Mac](http://mac.github.com/) or [Windows](http://windows.github.com/)): the
+ [Github Guide to Installing
+ Git](https://help.github.com/articles/set-up-git) is a good source of
+ information.
+
+* [Node.js](http://nodejs.org): We use Node to run a development web server,
+ run tests, and generate distributable files. We also use Node's Package
+ Manager (`npm`). Depending on your system, you can install Node either from
+ source or as a pre-packaged bundle.
+
+## Getting the Sources
+
+Forking and Cloning the AngularDart repository:
+
+1. Login to your Github account or create one by following the instructions given [here](https://github.com/signup/free).
+Afterwards.
+2. [Fork](http://help.github.com/forking) the [main AngularDart repository](https://github.com/angular/angular.dart).
+3. Clone your fork of the AngularDart repository and define an `upstream` remote pointing back to the AngularDart repository that you forked in the first place:
+
+```shell
+# Clone your Github repository:
+git clone git@github.com:<github username>/angular.dart.git
+
+# Go to the AngularDart directory:
+cd angular.dart
+
+# Add the main AngularDart repository as an upstream remote to your repository:
+git remote add upstream https://github.com/angular/angular.dart.git
+```
+
+## Environment Variable Setup
+
+
+Define the environment variables listed below. These are mainly needed for the
+test scripts. The notation shown here is for
+[`bash`](http://www.gnu.org/software/bash/); adapt as appropriate for your
+favorite shell. (Examples given below of possible values for initializing the
+environment variables assume Mac OS X and that you have installed the Dart
+Editor in the directory named by `$DART_EDITOR_DIR`. This is only for
+illustrative purposes.)
+
+```shell
+# CHROME_BIN: path to a Chrome browser executable; e.g.,
+export CHROME_BIN="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
+
+# CHROME_CANARY_BIN: path to a Dartium browser executable; e.g.,
+export CHROME_CANARY_BIN="$DART_EDITOR_DIR/chromium/Chromium.app/Contents/MacOS/Chromium"
+```
+**Note**: the `$CHROME_CANARY_BIN` environment variable is used by karma to run your tests
+in dartium instead of chromium. If you don't do this, the dart2js compile will make the tests
+run extremely slow since it has to wait for a full js compile each time.
+
+You should also add the Dart SDK `bin` directory to your path and/or define `DART_SDK`; e.g.
+
+```shell
+# DART_SDK: path to a Dart SDK directory; e.g.,
+export DART_SDK="$DART_EDITOR_DIR/dart-sdk"
+
+# Update PATH to include the Dart SDK bin directory
+PATH+=":$DART_SDK/bin"
+```
+## Installing NPM Modules and Dart Packages
+
+Next, install the modules and packages needed to run AngularDart tests:
+
+```shell
+# Install node.js dependencies:
+npm install
+
+# Install karma onto your command line (optional)
+npm install karma -g
+
+# Install Dart packages
+pub install
+```
+
+## Running Tests Locally
+
+NOTE: scripts are being written to embody the following steps.
+
+To run base tests:
+
+```shell
+# Source a script to define yet more environment variables
+. ./scripts/env.sh
+
+# Run io tests:
+dart --checked test/io/all.dart
+
+# Run expression extractor tests:
+scripts/test-expression-extractor.sh
+
+Run the Dart Analyzer:
+./scripts/analyze.sh
+```
+
+To run Karma tests over Dartium, execute the following shell commands (which
+will launch the Karma server):
+
+```shell
+. ./scripts/env.sh
+node "node_modules/karma/bin/karma" start karma.conf \
+ --reporters=junit,dots --port=8765 --runner-port=8766 \
+ --browsers=Dartium
+```
+
+In another shell window or tab, or from your favorite IDE, launch the Karma
+tests proper by executing:
+
+```shell
+. ./scripts/env.sh
+karma_run.sh
+```
+
+**Note:**: If the dart analyzer fails with warnings, the tests will not run.
+You can manually run the tests if this happens:
+
+```shell
+karma run --port=8765
+```
+
+## Debugging
+
+In the dart editor you can configure a dartium launch target for the karma test runner debug page.
+The menu option is under Run > Manage Launches > Create new Dartium Launch.
+
+```
+http://localhost:8765/debug.html
+```
+
+If you want to only run a single test you can alter the test you wish to run by changing `it` to `iit`
+or `describe` to `ddescribe`. This will only run that individual test and make it much easier to debug.
+
+
+## Continuous Integration using Travis
+
+See the instructions given [here](https://github.com/angular/angular.dart/blob/master/travis.md).
+
+-----

Powered by Google App Engine
This is Rietveld 408576698