1 These tests are run with js-test-driver
2 (http://code.google.com/p/js-test-driver/).
9 - Install phantomjs (http://www.phantomjs.org).
11 - Start a terminal window at the dygraphs root directory (one
12 directory up from here.)
14 - Run "./test.sh". This will tell you whether the tests passed.
19 - Start a terminal window at the dygraphs root directory (one
20 directory up from here.)
22 - From there, you start the test server and capture at least one slave
26 $ java -jar ./auto_tests/lib/JsTestDriver-1.3.3c.jar --port 9876
29 http://localhost:9876/capture
30 in the browser you want to use for your test.
34 $ java -jar ./auto_tests/lib/JsTestDriver-1.3.3c.jar --tests all
40 This is a bit of a hack, but you can also run tests manually inside the browser
41 using auto_tests/misc/local.html.
43 Once you've opened that page, open up the JavaScript console and run something
46 new SimpleDrawingTestCase().runTest("testDrawSimpleRangePlusOne")
48 to run just one test. This is useful for seeing the dygraph that the test
49 creates, setting breakpoints, etc.
51 Please don't rely on it as proof that your tests pass; the command-line is the
52 reference for ensuring Dygraphs automated tests pass.
55 (This is a specialized version of the instructions found at
56 http://code.google.com/p/js-test-driver/wiki/GettingStarted.
57 They're listed as a courtesy, but you really should get to understand
58 js-test-driver, which has lots of powerful features.)
64 To generate code coverage data, start the jstd test server:
66 $ java -jar ./auto_tests/lib/JsTestDriver-1.3.3c.jar --port 9876
68 Then run the tests with the --outputCoverage option:
70 $ java -jar ./auto_tests/lib/JsTestDriver-1.3.3c.jar --tests all --testOutput .
72 This can take a few minutes. It will spew out gobs of XML files, which should
73 be deleted. The one file you care about is jsTestDriver.conf-coverage.dat. It
74 contains LCOV-format coverage data. It contains coverage data for _all_ JS
75 files, including the tests themselves and library code which is irrelevant for
76 coverage analysis. So you need to filter it down:
78 $ cat jsTestDriver.conf-coverage.dat | ./auto_tests/misc/filter-lcov.py
80 To post the coverage data to coveralls, you'll need to export a few environment
81 variables and install node-coveralls:
83 $ npm install # installs node-coveralls, which is listed in package.json
84 $ export COVERALLS_SERVICE_NAME=jstd
85 $ export COVERALLS_REPO_TOKEN=... # get this by visiting http://coveralls.io
86 $ export COVERALLS_GIT_COMMIT=$(git rev-parse HEAD)
87 $ cat jsTestDriver.conf-coverage.dat \
88 | ./auto_tests/misc/filter-lcov.py \
89 | ./node_modules/coveralls/bin/coveralls.js
91 If all goes well, you should see your coverage data posted at
92 https://coveralls.io/r/danvk/dygraphs.