Test if a promise is resolved or rejected with Jasmine in Nodejs(在 Nodejs 中使用 Jasmine 测试 promise 是否被解决或拒绝)
问题描述
我知道如何在 Mocha 中做到这一点,但想知道如何在 Jasmine 中做到这一点.我试过这个
I know how to do it in Mocha but want to know how to do it with Jasmine. I tried this
describe('test promise with jasmine', function() {
it('expects a rejected promise', function() {
var promise = getRejectedPromise();
// return expect(promise).toBe('rejected');
return expect(promise.inspect().state).toBe('rejected');
});
});
但是,状态总是pending
,当然,测试失败了.我在网上找不到任何可以让它工作的例子.
However, the state is always pending
and, of course, the test fails. I couldn't find any example online that I could make it work.
有人可以帮我解决这个问题吗?
Can someone please help me with this?
谢谢.
推荐答案
要使用 jasmine 测试异步代码,您应该使用 它的异步语法,例如:
To test asynchronous code with jasmine you should use its async syntax, e.g.:
describe('test promise with jasmine', function(done) {
var promise = getRejectedPromise();
promise.then(function() {
// Promise is resolved
done(new Error('Promise should not be resolved'));
}, function(reason) {
// Promise is rejected
// You could check rejection reason if you want to
done(); // Success
});
});
这篇关于在 Nodejs 中使用 Jasmine 测试 promise 是否被解决或拒绝的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Nodejs 中使用 Jasmine 测试 promise 是否被解决或拒


- 在不使用循环的情况下查找数字数组中的一项 2022-01-01
- 是否可以将标志传递给 Gulp 以使其以不同的方式 2022-01-01
- 如何向 ipc 渲染器发送添加回调 2022-01-01
- 如何调试 CSS/Javascript 悬停问题 2022-01-01
- 从原点悬停时触发 translateY() 2022-01-01
- 我不能使用 json 使用 react 向我的 web api 发出 Post 请求 2022-01-01
- 使用 iframe URL 的 jQuery UI 对话框 2022-01-01
- 如何显示带有换行符的文本标签? 2022-01-01
- 为什么我的页面无法在 Github 上加载? 2022-01-01
- 为什么悬停在委托事件处理程序中不起作用? 2022-01-01