@jknott/typescript-robust-websocket
Version:
A robust reconnecting WebSocket client for the browser with ts compatability based on robust-websocket
86 lines (77 loc) • 2.23 kB
HTML
<html>
<head>
<meta charset="utf-8">
<title>RobustWebSocket Tests</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../node_modules/mocha/mocha.css">
</head>
<body>
<script src="../node_modules/mocha/mocha.js"></script>
<script src="../node_modules/chai/chai.js"></script>
<script src="../node_modules/sinon-browser-only/sinon.js"></script>
<script src="../node_modules/sinon-chai/lib/sinon-chai.js"></script>
<script src="../node_modules/bluebird/js/browser/bluebird.js"></script>
<script src="../node_modules/object.assign/dist/browser.js"></script>
<script src="./CustomEvent.js"></script>
<div id="mocha"></div>
<script>
mocha.ui('bdd')
mocha.timeout(4000)
var should = chai.should()
chai.config.includeStack = true
</script>
<script src="../robust-websocket.js"></script>
<script src="tests.js"></script>
<script>
var pollUntilPassing = function(fn) {
var resolve, reject, tries = 0
var attempt = function() {
tries++
try {
fn()
resolve()
} catch(e) {
if (tries < 250) {
setTimeout(attempt, 10)
} else {
reject(e)
}
}
}
setTimeout(attempt, 10)
return new Promise(function(r, rj) {
resolve = r, reject = rj
})
}
window.onload = function() {
var runner = mocha.run(),
tests = []
runner.on('end', function() {
window.global_test_results = {
passed: runner.stats.passes,
failed: runner.stats.failures,
total: runner.stats.tests,
duration: runner.stats.duration,
tests: tests
}
})
runner.on('pass', function(test) {
tests.push({
name: test.fullTitle(),
result: true,
message: test.duration + 'ms'
})
})
runner.on('fail', function (test, err) {
tests.push({
name: test.fullTitle(),
result: false,
duration: test.duration,
message: (err.message || '<no message>') + ': ' + err.stack
})
})
}
</script>
</body>
</html>