UNPKG

nebulab-dropbox

Version:
32 lines (30 loc) 1.51 kB
describe 'Web Worker tests', -> if typeof window isnt 'undefined' and typeof window.Worker is 'function' it 'pass', (done) -> @timeout 3600000 # This test actually runs the whole suite in a Worker. worker = new Worker window.location.href.replace(/\/html\/.*$/, '/js/helpers/web_worker_main.js') worker.onmessage = (event) -> message = event.data switch message.type # NOTE: notifications for passing tests crowd out the (hopefully few) # failures and make debugging hard, so they're not shown; if # that becomes desirable, the code below will do the job # when 'pass' # console.log 'WebWorker Test passed: ' + message.test.fullTitle when 'fail' console.warn 'WebWorker Test failed: ' + message.test.fullTitle when 'done' expect(message).to.have.property 'stats' expect(message.stats).to.have.property 'failures' expect(message.stats.failures).to.equal 0 expect(message.stats).to.have.property 'passes' expect(message.stats.passes).to.be.greaterThan 0 done() worker.onerror = (event) -> console.warn "WebWorker error: #{event.message} " + "(#{event.filename}: #{event.lineno})" event.preventDefault() if event.preventDefault worker.postMessage type: 'go', testXhrServer: testXhrServer else it.skip 'pass'