首页 > 解决方案 > 如何模拟返回承诺的对象?

问题描述

我想为这个对象创建一个模拟单元测试。

sqs.listQueues().promise()
      .then(...

这是我模拟这个但仍然得到错误的尝试之一sqs.listQueues(...).promise is not a function

const sqs = {
    listQueues: () => Promise.resolve(this),
    promise: () => Promise.resolve()
  }

我怎样才能正确地模拟这个对象?

标签: javascriptnode.js

解决方案


看起来listQueues()不应该返回一个承诺。也许这会起作用:

const sqs = {
  listQueues: () => ({
    promise: () => Promise.resolve()
  })
}

推荐阅读