Модульный тест Rxjs 5
Я пытаюсь написать тест, используя mocha и chai для моих наблюдаемых методов, который вызывает сервер и возвращает некоторые данные json. Однако, когда я запускаю тест, я получаю следующую ошибку: Ошибка: превышено время ожидания 2000 мс. Для асинхронных тестов и хуков убедитесь, что вызывается "done()"; если вы возвращаете обещание, убедитесь, что оно разрешено. Даже когда я перезаписываю время ожидания по умолчанию, я все равно получаю вышеуказанную ошибку. Что я делаю неправильно?
describe("some test", () => {
let someClass: SomeClass;
before(() => {
someClass = new SomeClass();
});
;
it("should meet some condition", done => {
let getData = someClass.getData('query')
getData.subscribe(json => {
json.success.should.equal(true);
done();
},
done
);
});
});
1 ответ
Я нашел решение, я звоню done()
в перед крюком и установленного таймаута на каждом it()
функция.
describe("some test", () => {
let someClass: SomeClass;
before((done) => {
someClass = new SomeClass();
done();
});
;
it("should meet some condition", done => {
let getData = someClass.getData('query')
getData.subscribe(json => {
json.success.should.equal(true);
done();
},
done
);
}).timeout(10000);
});