SockJS

 view release on metacpan or  search on metacpan

t-vendor/html/src/endtoendtests.coffee  view on Meta::CPAN

            equals(e.reason, 'Can\'t connect to server')
        else
            # IE 7 doesn't look at /info, unfortunately
            equals(e.code, 2000)
            equals(e.reason, 'All transports failed')
        equals(e.wasClean, false)
        start()

asyncTest "invalid url port", ->
    expect(4)
    dl = document.location
    r = newSockJS(dl.protocol + '//' + dl.hostname + ':1079', 'jsonp-polling')
    ok(r)
    r.onopen = (e) ->
        ok(false)
    r.onclose = (e) ->
        if u.isXHRCorsCapable() < 4
            equals(e.code, 1002)
            equals(e.reason, 'Can\'t connect to server')
        else
            # IE 7 doesn't look at /info, unfortunately
            equals(e.code, 2000)
            equals(e.reason, 'All transports failed')
        equals(e.wasClean, false)
        start()

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

asyncTest "close on close", ->
    expect(4)
    r = newSockJS('/close', 'jsonp-polling')
    r.onopen = (e) ->
        ok(true)
    r.onmessage = (e) ->
        ok(false)
    r.onclose = (e) ->
        equals(e.code, 3000)
        equals(e.reason, "Go away!")
        equals(e.wasClean, true)
        r.onclose = ->
            ok(false)
        r.close()

        u.delay 10, ->
            start()

# Test for #61
asyncTest "EventEmitter exception handling", ->
    expect(1)
    r = newSockJS('/echo', 'xhr-streaming')
    prev_onerror = window.onerror
    window.onerror = (e) ->
        ok(/onopen error/.test(''+e))
        window.onerror = prev_onerror
        r.close()
    r.onopen = (e) ->
        throw "onopen error"
    r.onclose = ->
        start()



( run in 3.584 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )