小编ato*_*ULL的帖子

如何模拟dayjs链式方法

我有 this dayjs 对象:

const today = dayjs.utc(date).startOf("day")

我试图用笑话来嘲笑它,但无济于事。这是我尝试过的方法:

jest.mock("dayjs", () => ({
  extend: jest.fn(),
  utc: jest.fn((...args) => {
    const dayjs = jest.requireActual("dayjs");
    dayjs.extend(jest.requireActual("dayjs/plugin/utc"));

    return dayjs
      .utc(args.filter((arg) => arg).length > 0 ? args : mockDate)
      .startOf("day");
  }),
  startOf: jest.fn().mockReturnThis(),
}));
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个:

jest.mock("dayjs", () => ({
  extend: jest.fn(),
  utc: jest.fn((...args) => ({
    startOf: jest.fn(() => {
      const dayjs = jest.requireActual("dayjs");
      dayjs.extend(jest.requireActual("dayjs/plugin/utc"));

      return dayjs
        .utc(args.filter((arg) => arg).length > 0 ? args : mockEventData)
        .startOf("day");
    }),
  })),
}));
Run Code Online (Sandbox Code Playgroud)

两者都不工作。有人有建议吗?

javascript node.js jestjs dayjs

11
推荐指数
3
解决办法
2万
查看次数

标签 统计

dayjs ×1

javascript ×1

jestjs ×1

node.js ×1