public async Task ShouldWorkWithWebSocket() { HttpsServer.SendOnWebSocketConnection("incoming"); await using var context = await Browser.NewContextAsync(new() { IgnoreHTTPSErrors = true }); var page = await context.NewPageAsync(); string value = await page.EvaluateAsync <string>(@"endpoint => { let cb; const result = new Promise(f => cb = f); const ws = new WebSocket(endpoint); ws.addEventListener('message', data => { ws.close(); cb(data.data); }); ws.addEventListener('error', error => cb('Error')); return result; }", HttpsServer.Prefix.Replace("https", "wss") + "/ws"); Assert.AreEqual("incoming", value); }