spec: Return early on error
authorCheng Zhao <zcbenz@gmail.com>
Wed, 28 Oct 2015 10:19:36 +0000 (18:19 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Wed, 28 Oct 2015 11:54:59 +0000 (19:54 +0800)
spec/api-protocol-spec.coffee

index 02fd8d5..8990f80 100644 (file)
@@ -26,6 +26,7 @@ describe 'protocol module', ->
         callback(text)
         callback()
       protocol.registerStringProtocol protocolName, doubleHandler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -36,6 +37,7 @@ describe 'protocol module', ->
 
     it 'sends error when callback is called with nothing', (done) ->
       protocol.registerBufferProtocol protocolName, emptyHandler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -48,6 +50,7 @@ describe 'protocol module', ->
       handler = (request, callback) ->
         setImmediate -> callback(text)
       protocol.registerStringProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -66,6 +69,7 @@ describe 'protocol module', ->
     it 'sends string as response', (done) ->
       handler = (request, callback) -> callback(text)
       protocol.registerStringProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -77,6 +81,7 @@ describe 'protocol module', ->
     it 'sends object as response', (done) ->
       handler = (request, callback) -> callback(data: text, mimeType: 'text/html')
       protocol.registerStringProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data, statux, request) ->
@@ -88,6 +93,7 @@ describe 'protocol module', ->
     it 'fails when sending object other than string', (done) ->
       handler = (request, callback) -> callback(new Date)
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -102,6 +108,7 @@ describe 'protocol module', ->
     it 'sends Buffer as response', (done) ->
       handler = (request, callback) -> callback(buffer)
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -113,6 +120,7 @@ describe 'protocol module', ->
     it 'sends object as response', (done) ->
       handler = (request, callback) -> callback(data: buffer, mimeType: 'text/html')
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data, statux, request) ->
@@ -124,6 +132,7 @@ describe 'protocol module', ->
     it 'fails when sending string', (done) ->
       handler = (request, callback) -> callback(text)
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -142,6 +151,7 @@ describe 'protocol module', ->
     it 'sends file path as response', (done) ->
       handler = (request, callback) -> callback(filePath)
       protocol.registerFileProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -153,6 +163,7 @@ describe 'protocol module', ->
     it 'sends object as response', (done) ->
       handler = (request, callback) -> callback(path: filePath)
       protocol.registerFileProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data, statux, request) ->
@@ -164,6 +175,7 @@ describe 'protocol module', ->
     it 'can send normal file', (done) ->
       handler = (request, callback) -> callback(normalPath)
       protocol.registerFileProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -176,6 +188,7 @@ describe 'protocol module', ->
       fakeFilePath = path.join __dirname, 'fixtures', 'asar', 'a.asar', 'not-exist'
       handler = (request, callback) -> callback(fakeFilePath)
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -187,6 +200,7 @@ describe 'protocol module', ->
     it 'fails when sending unsupported content', (done) ->
       handler = (request, callback) -> callback(new Date)
       protocol.registerBufferProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -206,6 +220,7 @@ describe 'protocol module', ->
         url = "http://127.0.0.1:#{port}"
         handler = (request, callback) -> callback({url})
         protocol.registerHttpProtocol protocolName, handler, (error) ->
+          return done(error) if error
           $.ajax
             url: "#{protocolName}://fake-host"
             success: (data) ->
@@ -217,6 +232,7 @@ describe 'protocol module', ->
     it 'fails when sending invalid url', (done) ->
       handler = (request, callback) -> callback({url: 'url'})
       protocol.registerHttpProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -228,6 +244,7 @@ describe 'protocol module', ->
     it 'fails when sending unsupported content', (done) ->
       handler = (request, callback) -> callback(new Date)
       protocol.registerHttpProtocol protocolName, handler, (error) ->
+        return done(error) if error
         $.ajax
           url: "#{protocolName}://fake-host"
           success: (data) ->
@@ -288,6 +305,7 @@ describe 'protocol module', ->
         callback(text)
         callback()
       protocol.interceptStringProtocol 'http', doubleHandler, (error) ->
+        return done(error) if error
         $.ajax
           url: 'http://fake-host'
           success: (data) ->
@@ -298,6 +316,7 @@ describe 'protocol module', ->
 
     it 'sends error when callback is called with nothing', (done) ->
       protocol.interceptBufferProtocol 'http', emptyHandler, (error) ->
+        return done(error) if error
         $.ajax
           url: 'http://fake-host'
           success: (data) ->
@@ -310,6 +329,7 @@ describe 'protocol module', ->
     it 'can intercept http protocol', (done) ->
       handler = (request, callback) -> callback(text)
       protocol.interceptStringProtocol 'http', handler, (error) ->
+        return done(error) if error
         $.ajax
           url: 'http://fake-host'
           success: (data) ->
@@ -322,6 +342,7 @@ describe 'protocol module', ->
       handler = (request, callback) ->
         callback({mimeType: 'application/json', data: '{"value": 1}'})
       protocol.interceptStringProtocol 'http', handler, (error) ->
+        return done(error) if error
         $.ajax
           url: 'http://fake-host'
           success: (data) ->
@@ -335,6 +356,7 @@ describe 'protocol module', ->
     it 'can intercept http protocol', (done) ->
       handler = (request, callback) -> callback(new Buffer(text))
       protocol.interceptBufferProtocol 'http', handler, (error) ->
+        return done(error) if error
         $.ajax
           url: 'http://fake-host'
           success: (data) ->