Jest не восстанавливает фиктивную функцию - PullRequest
0 голосов
/ 16 июня 2020

Я пытаюсь имитировать модуль UUID для одного из моих тестов, он должен восстанавливать исходное состояние после каждого теста, вот мой код.

import uuid from "uuid";

describe("test", () => {
  beforeAll(() => {
    // checking if it hasn't been mocked elsewhere
    console.log(uuid.v4());
  });
  afterAll(() => {
    jest.resetAllMocks();
  });

  it("should set a mock of uuid.v4", () => {
    (uuid.v4 as jest.Mock) = jest.fn();
    (uuid.v4 as jest.Mock).mockReturnValueOnce("tester");
    console.log(1, uuid.v4());
  });

  it("should restore the mocked version", () => {
    // this should be different to the mocked version above.
    console.log(2, uuid.v4());
  });
});

В настоящее время возвращается первый журнал консоли фиктивное значение, то следующий журнал консоли возвращает undefined, я хочу, чтобы он вернулся в исходное состояние, чтобы он возвращал строку UUID, как и должно.

Есть предложения?

...