Я делаю тест с макетом в моем проекте. но по какой-то причине я получил эту ошибку при запуске npm test - api-service.
Я использую Jest.
Я не знаю, почему я получил эту ошибку, когда я пытаюсь запустить тест.
кто-то звонит, помогите мне?
api.service.test. js
import ApiService from './Api-service';
jest.mock('axios');
it('return wellheads', async () => {
const wellheads = {
0: {
UniqueWellboreIdentifier: 'BR 3-OGX-50D-RJS',
UniqueWellIdentifier: 'BR 3-OGX-50D-RJS',
CountryIdentifier: 'Brazil',
BasinIdentifier: 'Santos',
FieldIdentifier: 'TUBARAO AZUL',
Latitude: -23.56569,
Longitude: -41.445133,
},
1: {
UniqueWellboreIdentifier: 'BR 1-BRSA-532-SPS',
UniqueWellIdentifier: 'BR 1-BRSA-532-SPS',
CountryIdentifier: 'Brazil',
BasinIdentifier: 'Santos',
FieldIdentifier: 'No field related',
Latitude: -25.624473,
Longitude: -43.905731,
},
};
const resp = { data: wellheads };
axios.interceptors.get.mockResolvedValue(resp);
return ApiService.getWellhead().then((data) =>
expect(data).toEqual(wellheads)
);
});
api-перехватчики. js
import axios from 'axios';
import { authContext, getAdalApiToken } from '../config/AdalConfig';
import conf, { getResource } from './../settings';
const api = axios.create({
baseURL: getResource('psa').ApiBaseUrl,
});
api.interceptors.request.use(
(config) => {
return new Promise((resolve, reject) => {
authContext.acquireToken(conf.AzureADClientId, (message, token, msg) => {
if (!!token) {
config.headers.Authorization = `Bearer ${token}`;
resolve(config);
} else {
reject(config);
}
});
});
},
function (error) {
console.log(error);
return Promise.reject(error);
}
);
api.interceptors.response.use(undefined, (err) => {
if (
err.response &&
err.response.status === 401 &&
err.response.config &&
!err.response.config.__isRetryRequest
) {
err.response.config.__isRetryRequest = true;
return new Promise((resolve, reject) => {
authContext.acquireToken(conf.AzureADClientId, (message, token, msg) => {
getAdalApiToken();
if (!!token) {
api.defaults.headers.common['Authorization'] = `Bearer ${token}`;
resolve(err.config);
} else {
reject(err.config);
}
});
// authContext.acquireToken(process.env.REACT_APP_CLIENT_ID, (message, token, msg) => {
// axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
// err.config.headers.Authorization = `Bearer ${token}`;
// axios(err.config).then(resolve, reject);
// });
});
}
throw err;
});
export default api;
, и при запуске возникает ошибка:
Набор тестов не смог выполнить runice.test. TypeError: Невозможно прочитать свойство 'interceptors' из неопределенного
7 | });
8 |
> 9 | api.interceptors.request.use(
| ^
10 | (config) => {
10 | (config) => {
11 | return new Promise((resolve, reject) => {
12 | authContext.acquireToken(conf.AzureADClientId, (message, token, msg) => {