Модульное тестирование мокко-вебпака с суперагентом
Я использую mocha-webpack для модульного тестирования внешнего API и использую superAgent для моего ajax-запроса. Я делаю 2 теста:
const request = require("superagent");
var chai = require('chai')
, expect = chai.expect
, should = chai.should();
var chaiAsPromised = require("chai-as-promised");
var chaiThings = require("chai-things");
chai.use(chaiThings);
chai.use(chaiAsPromised);
describe("Service API getData url", function () {
var response;
before(function(done) {
request
.get('http://www.google.fr/')
.withCredentials()
.end(function(res){
if ( err ) {
console.log("err", err)
} else {
response = res;
done();
}
});
});
it("response is 200", function() {
expect(response.status).to.equal(200);
});
it("response type", function() {
expect(response.type).to.equal("text/html");
});
но это не работает
error : err { Error: Request has been terminated
Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.
На фронте у меня нет проблемы, я могу общаться с superAgent и отображать данные, но не с тестом.
мой конфиг webpack у меня есть:
headers: {
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Credentials": "true"
},
inline: false,
noCredentials: true,
Новый тест:
var response;
before(function(done) { request.get('https://httpbin.org/get').end(function(err, res){
if ( err ) {
console.log("err", err)
} else {
response = res;
done();
}
});
}); it("response is 200", function() {
expect(response.status).to.equal(200);
});
it("response type", function() {
expect(response.type).to.equal("application/json");
});
Тест пройден успешно
новый тест:
var response;
before(function(done) {
request.get('http://api.football-data.org/v1/fixtures?timeFrame=n1').set('X-Auth-Token', 'myid')
.end(function (err, res) {
if ( err ) {
console.log("err", err)
} else {
response = res;
done();
}
});
it("response is 200", function() {
expect(response.status).to.equal(200);
});
ошибка теста:
{ Error: Request has been terminated
Possible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.
crossDomain: true,
status: undefined,
method: 'GET',
url: 'http://api.football-data.org/v1/fixtures?timeFrame=n1' }
У всех была такая же проблема?