Аналог Jasmine createSpyObj в Jest

  • В Jasmine объект шпиона создаётся используя функцию Jasmine createSpyObj и передавая в него параметры имени класса и массива методов.
// Jasmine
const serviceMock = createSpyObj('service', ['methods', 'you', 'want', 'to', 'mock']);

В Jest просто создается объект с ожидаемыми свойствами, а функция jest.fn() создает методы-шпионы.

// Jest
const serviceMock = {
 methods: jest.fn(),
 you: jest.fn(),
 want: jest.fn(),
 to: jest.fn(),
 mock: jest.fn()
};

Jasmine/jest различия

  • jasmine.createSpy('name') --> jest.fn()
  • and.returnValue() --> mockReturnValue()
  • spyOn(...).and.callFake(() => {}) --> jest.spyOn(...).mockImplementation(() => {})

Похожие записи

Angular. Can't set breakpoints in VS Code

Вариант решения проблемы, когда не срабатывают точки остановки при разработке Angular приложений в редакторе VS Code
10 апреля 2018 г. в Angular