@tramvai/mock
v1.29.1
Published
`@tramvai/mock` - набор моков некоторых tramvai компонентов.
Downloads
9
Readme
Tramvai mock
@tramvai/mock - набор моков некоторых tramvai компонентов.
Подключение
npm i --save-dev @tramvai/mockContext
Для мокирования контекста, используемого в React компонентах и экшенах, можно использовать утилиту createMockContext
Интерфейс
type createMockContext = ({ initialState, di, providers, stores, actionConditionals }) => { context, store }initialState- объект с изначальным состоянием стейтаdi- экземпляр DI контейнераproviders- список провайдеров, которые будут добавлены в DI. Используется когда нужно замокировать depsstores- список сторов, созданных черезcreateReduceractionConditionals- список с реализациями глобальных ограничений. Используется когда нужно проверить у экшенов различные ограниченияmocks- моки, в которые будут обернутыstore.dispatchиcontext.executeActioncontext- контекст, который можно использовать при запуске экшенов или передавать в Reactstore- экземпляр общего стора, с методамиgetState,dispatchиsubscribe
Тестирование
const someEvent = createEvent('someEvent');
const someAction = createAction({
name: 'someAction',
fn() {},
});
const { store, context } = createMockContext({
mocks: {
dispatchMock: jest.fn,
executeActionMock: jest.fn,
},
});
store.dispatch(someEvent());
context.executeAction(someAction);
expect(store.dispatch).toHaveBeenCalled();
expect(context.executeAction).toHaveBeenCalled();