1

My first attempt to run tests using Dojo 1.8.3 on the command line with node was thwarted by this error message:

../dojo/dojo.js:15
ode:function(){return _25;},guardCheckComplete:_37};};if(1){var _38=location.p
                                                                    ^
ReferenceError: location is not defined

The workaround is to use the uncompressed source instead of the release, since the optimized version only seems to work in a browser. Next I tried a configuration script

// bootstrap.js
dojoConfig = {
    baseUrl: ".",
    packages:[{name: 'dojo', location: '../dojo_src'}],
    deps: ['./ui_test.js']
};
require('../dojo_src/dojo.js');

And a simple test

// ui_test.js
dojo.require("doh.runner");
doh.register("test_1", [
    function four_eq_4() {
        var x = 4;
        doh.is(x.toString(), "4");
    }
]);
doh.run();
console.log("done.");

When I run the tests doh.run() does not seem to have an effect

$ node bootstrap.js
done.

My directory structure:

/app
    bootstrap.js
    ui_test.js
/util/doh
/dojo_src

What is the correct way to use DOH on the command line?

eradman
  • 1,996
  • 1
  • 17
  • 23

1 Answers1

0

The answer is simple, but not obvious. Run with load=doh to invoke the test runner.

$ node bootstrap.js load=odh
eradman
  • 1,996
  • 1
  • 17
  • 23