我使用findRenderedComponentWithType来确保存在错误,我正在使用chai的assert.throws,但它无效。
首先:
TestUtils.findRenderedComponentWithType文档:
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
pug: {
compile: {
options: {
client: false,
pretty: true
},
files: [ {
cwd: "resources/assets/jade",
src: "**/*.jade",
dest: "public/app",
expand: true,
ext: ".html"
} ]
}
},
});
grunt.loadNpmTasks('grunt-contrib-pug');
grunt.registerTask('default', ['pug'] );
};
当我使用该功能时,我得到一个错误(正如预期的那样)。
但是我似乎无法用chai正确地断言它:
我试过了expects there to be one result and returns that one result, or throws exception if there is any other number of matches besides one.
。但它说测试失败了,即使我收到错误:
assert.throws(TestUtils.findRenderedComponentWithType(element, component), /(Error)/)
答案 0 :(得分:1)
检查throws的签名,它需要一个函数,而不是一个错误/对象(这是findRenderedComponentWithType
的结果。
http://chaijs.com/api/assert/#method_throws
所以你会想做像
这样的事情cons fn = () => TestUtils.findRenderedComponentWithType(element, component)
assert.throws(fn)