Объявление переменной в beforeEach - PullRequest
0 голосов
/ 29 мая 2018

Я получаю

ReferenceError: initialState не определено

, когда я объявляю initialState как const в beforeEach(()=> {....Разве это не должно сработать?

describe('register reducer', () => {
        beforeEach(() => {
            const initialState = UsersService.getInitialUsersState();
        })

        it('should return the initial state', () => {
            expect(usersReducer(undefined, [])).toEqual(initialState);
        });

        it('Toggle isBaby or sitter', () => {
            deepFreeze(initialState);
            let newState = initialState;
            newState.isBaby = true;

            expect(
                usersReducer(initialState, {
                    type: types.UsersActions.SET_TYPE,
                    payload: true
                })).toEqual(newState);
        });

Ответы [ 2 ]

0 голосов
/ 31 января 2019

этот вопрос действительно старый, но просто приведу здесь рабочий пример для тех, кто сталкивается с этим вопросом.вот один способ, которым вы могли бы сделать это:

describe('register reducer', () => {
        let initialState
        beforeEach(() => {
            initialState = UsersService.getInitialUsersState();
        })

        it('should return the initial state', () => {
            expect(usersReducer(undefined, [])).toEqual(initialState);
        });

        it('Toggle isBaby or sitter', () => {
            deepFreeze(initialState);
            let newState = initialState;
            newState.isBaby = true;

            expect(
                usersReducer(initialState, {
                    type: types.UsersActions.SET_TYPE,
                    payload: true
                })).toEqual(newState);
        });
0 голосов
/ 29 мая 2018

Хотя верно, что beforeEach запускается перед каждым тестом, если вы делаете это таким образом, initialState виден только в области действия beforeEach, измените его на:

describe('register reducer', () => {
  let initialState;
  beforeEach(() => {
      initialState = UsersService.getInitialUsersState();
  })
  ...
...