Контекст:
У меня есть серверная программа WebSocket (сборка .exe с C#), и я хочу проверить свой запрос с клиентом NodeJs (в рабочем режиме, это будет NodeJs клиентское приложение, которое будет использовать "API") Я использую jest для его проверки
Мой тестовый код :
const WebSocket = require('ws');
test('Extension Connection test', async ()=>{
var ws = new WebSocket("ws://127.0.0.1:2031/Extension");
await new Promise((resolve, reject)=>{
ws.onmessage = function (message) {
var responseAttended = {"type":"Information","data":{"information":"Success connection as Extension"},"target":"Extension"};
assert(message.data, responseAttended);
resolve();
};
ws.onopen = function () {
var request = {target: "ExtensionService", type: "Auth", data: {name: "extension"}};
ws.send(JSON.stringify(request));
};
ws.onerror = function () {
assert(false);
reject();
}
});
});
Я начал мой сервер перед запуском теста, мой сервер перехватывает значение send (так что websocket подключен). Мой сервер сделал кое-что и отослал ответ, но похоже, что он никогда не появлялся в моем NodeJs тестовом клиенте
Поскольку ответа нет прибыл, обещание не выполнено, и через 5 секунд шут тайм-аут остановить тест.
Есть идеи, что я сделал плохо?