Javascript 我是否正确地模拟了API调用?

Javascript 我是否正确地模拟了API调用?,javascript,reactjs,testing,jestjs,mocking,Javascript,Reactjs,Testing,Jestjs,Mocking,我不确定我是否理解正确,所以请随时提供任何解释 我正在尝试为负责调用API的函数编写一个测试。我知道最好的做法是模拟API函数,而不是调用真正的API。我已经完成了,我的测试也通过了,但是我真的可以确定我没有调用真正的API吗?我怎么检查 domain.js export const getCountriesData = () => { return fetch("https://restcountries.eu/rest/v2/all").then((resp

我不确定我是否理解正确,所以请随时提供任何解释

我正在尝试为负责调用API的函数编写一个测试。我知道最好的做法是模拟API函数,而不是调用真正的API。我已经完成了,我的测试也通过了,但是我真的可以确定我没有调用真正的API吗?我怎么检查

domain.js

export const getCountriesData = () => {
    return fetch("https://restcountries.eu/rest/v2/all").then((response) =>
    response
      .json()
      .then((data) => {
        return data;
      })
      .catch((err) => console.log(err))
  );
}
domain.test.js

const testData = [
    {name: 'Poland', capital: 'Warsaw', borders: ['BLR', 'DEU'], region: 'Europe', alpha3Code: "POL"},
    {name: 'Afghanistan', capital: 'Tokio', borders: ['CHN', 'UZB'], region: 'Asia', alpha3Code: "AFG"},
    {name: 'United States of America', capital: 'Washington', borders: ['CAN', 'MEX'],region: 'Americas', alpha3Code: "USA"},
    {name: 'Germany', capital: 'Berlin', borders: ['POL', 'BEL'], region: 'Europe', alpha3Code: "DEU"},
    {name: 'Belarus', capital: 'Minsk', borders: ['LVA', 'LTU'], region: 'Europe', alpha3Code: "BEL"}
];

global.fetch = jest.fn(()=> 
    Promise.resolve({
        json: ()=> Promise.resolve(testData)
    })
    
)

describe('Api call test', ()=> {
    it('Should call the mocked API call', async ()=> {
        const data = await getCountriesData();
        expect(data).toEqual(testData);
    })
})
请告诉我这样做是否正确:)谢谢