0
Ich habe den folgenden Code, den ich testen möchte.Unit Test Versprechen Ergebnis innerhalb Event Listener in Knoten
emitter.on("request", function(req, res) {
mock_finder.getMockedResponse().then((mockedResponse) => {
res.end(mockedResponse);
});
});
Dann habe ich diesen Komponententest.
it("should return mocked response",() => {
// given
const mockedResponse = {
success: true
};
mock_finder.getMockedResponse.mockImplementation(() => Promise.resolve(mockedResponse));
const res = {
end: jest.fn()
}
// when
emitter.emit('request', req, res);
// then
expect(res.end).toHaveBeenCalledWith(mockedResponse);
});
Dieser Test funktioniert nicht, weil res.end(mockedResponse);
nach dem Test beendet ausgeführt wird.
Wie kann ich die Versprechen Antwort testen, nachdem ein Ereignis aufgerufen wird?