使用node.js在命令行上运行DOH

时间:2013-03-28 12:35:23

标签: dojo doh

我第一次尝试在命令行上使用Dojo 1.8.3运行测试 此错误消息阻止了node

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

解决方法是使用未压缩的源代替发布, 因为优化版本似乎只能在浏览器中使用。接下来我尝试了一个配置脚本

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

一个简单的测试

// 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.");

当我运行测试时doh.run()似乎没有效果

$ node bootstrap.js
done.

我的目录结构:

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

在命令行上使用DOH的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

答案很简单,但并不明显。使用load=doh运行以调用测试运行器。

$ node bootstrap.js load=odh