Skip to content
Arjun Guha edited this page Mar 4, 2018 · 1 revision

We use Node 8.5+ and Yarn 1.0+. Stopify's integration tests require Chrome, Firefox, ChromeDriver, and GeckoDriver.

The Stopify repository includes two modules necessary to build the CLI interface: stopify and stopify-continuations. The stopify module depends on stopify-continuations. To build both the projects in the correct order, run the following from the project root:

yarn install
yarn run build

Once built, you can run cd stopify to enter use the stopify CLI. To run all test cases:

yarn run test

Note that running all tests may take up to 30 minutes. (We run tests on Firefox and Chrome using several different transformations.) The following command only runs tests using exceptional continuations:

yarn run test --testNamePattern=lazy

Unless you're modifying the representation of continuations, it is usually adequate ot test your changes with only one continuation representation.

You can run a Stopified program in the terminal (using Node), which is usually the fastest way to test a small change. To do so, compile it with the --require-runtime flag and --disable-webpack and then run the output file using node.

For example:

stopify --disable-webpack --require-runtime src.js dst.js
node dst.js

The output file (dst.js above) takes the same command-line arguments as stopify-url.

Clone this wiki locally