Как я высмеиваю обещание в реагировании? - PullRequest
0 голосов
/ 07 июня 2018

Я хочу написать тест, который высмеивает обещание вactjs

Мне просто нужна смоделированная реализация getHeaders () для возврата строки

export const loadAllProjects = () => {
    return (dispatch) => {
        getHeaders()
            .then(headers => {
                ...do stuff
            })
    }
}

, чтобы уточнить, что моя первоначальная функция была...

export const loadAllProjects = () => {
    return (dispatch) => {
                ...do stuff
    }
}

... и мой тест был ...

    it('should create SET_ALL_PROJECTS action when fetching projects', () => {
    fetchMock
        .getOnce('http://test.projects.api/api/projects',
        {
            body: [{name: "x"}],
            headers: { 'content-type': 'application/json' }
        }).spy()
    const expectedActions = [
        { type: "SET_ALL_PROJECTS", json: [{name:"x"}] },
    ]
    checkAsyncActionsWereDispatched(expectedActions, actions.loadAllProjects)
});

Я хочу, чтобы тест работал с измененным заголовком

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Использование Promise.resolve

return Promise.resolve("your headers here");
0 голосов
/ 07 июня 2018
const getHeaders = () => {
    return new Promise((resolve, reject) => {
        resolve("some string");
    });
};

a = await getHeaders();    //some string
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...