<html>

<head>
<title>Single Worker Test</title>

<script src="worker_utils.js"></script>

<script>

var parms = new URLSearchParams(location.search);
var workerUrl = parms.get("workerUrl");

if (!workerUrl) {
  workerUrl = "worker_common.js";
}

try {
  var worker = getWorker(workerUrl);
  worker.postMessage("ping");
  worker.onmessage = function(evt) {
  if (evt.data == "pong")
    onSuccess();
  else
    onFailure();
}
} catch (err) {
    onFailure();
}

</script>
</head>

<body>
<div id=statusPanel></div>
</body>
</html>
