我有一些我想测试的外部配置的笨拙任务(确保他们做他们应该做的事情)。因此,我想编写一个运行before
函数中的任务的mocha测试,并断言一切顺利。
在我的gruntfile
中有类似
# Load task configs from `grunt` dir.
configs = require('load-grunt-configs') grunt,
config:
src: ['tasks/*{.js,.json,.coffee,.cson}']
# Load all **grunt tasks** with patter `grunt-*`
require('load-grunt-tasks') grunt, pattern: [
'grunt-*'
]
# Pass configs to grunt
grunt.initConfig configs
然后进行一些任务注册......
但是我现在可以访问less
less.cson
个tasks
任务grunt-contrib-less
(使用chai
)。
到目前为止一切顺利。 :)
我使用describe('Checking static resources for dev', function () {
describe('less task', function () {
before(function () {
grunt.task.run('less');
});
it('should have a compiled css file for docs', function () {
grunt.file.isFile('public/css/docs.css').should.be.ok;
grunt.file.isFile('public/css/docs.css.map').should.be.ok;
});
进行断言:
done
正如预期的那样,任务在测试运行后完成,因为它不是异步的,我也不知道如何告诉grunt(不修改现有的任务/配置)应该调用它grunt-run-task
功能准备就绪,然后进行断言。
我也试过了before(function (done) {
grunt.task.run('less', done);
});
但是无法设法运行任何任务(虽然我给了他们20秒以上的时间,但是他们中断了超时)。
猜猜我正在寻找像
这样的东西{{1}}
有人有什么建议吗?