如何仅更改一次测试的模拟对象返回值?

问题描述 投票:0回答:1

我有一套简单的测试,在某些情况下我想更改模拟模块值,而在某些情况下则不想。有人知道该怎么做吗?

这是我在mockConfig.js文件中的模拟对象

module.exports = {
  skillGames: {
    leftMenuWidget: {
      filterByBadge: 'exclusive',
      limit: 6,
      title: 'Exclusive games',
    },
  }
}

当我像这样尝试模拟mockConfig.js 文件进行测试时`

jest.mock('helpers/test/mockConfig', () => ({
      __esModule: true,
      skillGames: {
        leftMenuWidget: {
          limit: 6,
          title: 'Exclusive games',
        },
      },
    }));

我为所有测试设置了未定义的filterByBadge值,但我需要它仅对于一个测试为未定义

javascript reactjs jestjs module mocking
1个回答
0
投票

jest中有一个方法可以恢复原来的实现。

mockFn.mockRestore()

您可以在这里阅读相关内容

© www.soinside.com 2019 - 2024. All rights reserved.