SockJS

 view release on metacpan or  search on metacpan

t-vendor/html/lib/endtoendtests.js  view on Meta::CPAN

    return ok(false);
  };
  return r.onclose = function(e) {
    if (u.isXHRCorsCapable() < 4) {
      equals(e.code, 1002);
      equals(e.reason, 'Can\'t connect to server');
    } else {
      equals(e.code, 2000);
      equals(e.reason, 'All transports failed');
    }
    equals(e.wasClean, false);
    return start();
  };
});

asyncTest("disabled websocket test", function() {
  var r;
  expect(3);
  r = newSockJS('/disabled_websocket_echo', 'websocket');
  r.onopen = function(e) {
    return ok(false);
  };
  r.onmessage = function(e) {
    return ok(false);
  };
  return r.onclose = function(e) {
    equals(e.code, 2000);
    equals(e.reason, "All transports failed");
    equals(e.wasClean, false);
    return start();
  };
});

asyncTest("close on close", function() {
  var r;
  expect(4);
  r = newSockJS('/close', 'jsonp-polling');
  r.onopen = function(e) {
    return ok(true);
  };
  r.onmessage = function(e) {
    return ok(false);
  };
  return r.onclose = function(e) {
    equals(e.code, 3000);
    equals(e.reason, "Go away!");
    equals(e.wasClean, true);
    r.onclose = function() {
      return ok(false);
    };
    r.close();
    return u.delay(10, function() {
      return start();
    });
  };
});

asyncTest("EventEmitter exception handling", function() {
  var prev_onerror, r;
  expect(1);
  r = newSockJS('/echo', 'xhr-streaming');
  prev_onerror = window.onerror;
  window.onerror = function(e) {
    ok(/onopen error/.test('' + e));
    window.onerror = prev_onerror;
    return r.close();
  };
  r.onopen = function(e) {
    throw "onopen error";
  };
  return r.onclose = function() {
    return start();
  };
});



( run in 1.644 second using v1.01-cache-2.11-cpan-39bf76dae61 )