如何在Jest in Node中对此进行测试

时间:2020-06-26 16:21:06

标签: node.js jestjs fetch node-fetch

试图在带有Jest的Node中测试此类方法。我正在努力模拟获取。

有什么想法吗?

Api类

    async spotDate() {
        const url = 'url';
        const query = 'query';
        const requestOptions = 'options;
        let response = await fetch(url + query, requestOptions);
        let json = await response.json();
        let date = await new Date(json.settlement_date + "Z");
        return date
    }

Api.test

jest.mock('node-fetch');
const fetch = require('node-fetch');
const {Response} = jest.requireActual('node-fetch');

it('should fetch', async () => {
        fetch.mockReturnValue(
            Promise.resolve(new Response({settlement_date: '2020-06-03T00:00:00'})),
        );
        const api = new Api()
        await api.spotDate()

        expect(fetch).toHaveBeenCalledTimes(1);
    });

0 个答案:

没有答案