You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by er...@apache.org on 2018/12/18 21:47:18 UTC

[cordova-serve] branch master updated: Don't restore mocked resource prior to resolution (#15)

This is an automated email from the ASF dual-hosted git repository.

erisu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cordova-serve.git


The following commit(s) were added to refs/heads/master by this push:
     new e6d8130  Don't restore mocked resource prior to resolution (#15)
e6d8130 is described below

commit e6d8130ebfcddfe67c969e494d92429bbca9c9af
Author: Oliver Salzburg <ol...@gmail.com>
AuthorDate: Tue Dec 18 22:47:14 2018 +0100

    Don't restore mocked resource prior to resolution (#15)
    
    * Don't restore mocked resource prior to resolution
    
    The previous code had the possibility of restoring the mocked `open` module, actually shelling out and failing.
    
    * Ensure `open` is mocked in all cases
    
    Because the default behavior is to use the default browser (and invoke it with `open`) it needs to be properly mocked in all tests.
---
 spec/browser.spec.js | 28 +++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/spec/browser.spec.js b/spec/browser.spec.js
index 6fc9a74..14bcc72 100644
--- a/spec/browser.spec.js
+++ b/spec/browser.spec.js
@@ -34,19 +34,26 @@ describe('browser', function() {
     });
 
     it('should return a promise', function(done) {
+        var mockOpen = jasmine.createSpy('mockOpen');
+        var origOpen = browser.__get__('open'); // so we can be nice and restore it later
+
+        browser.__set__('open',mockOpen);
+
         var result = browser();
         expect(result).toBeDefined();
         expectPromise(result);
+        
         result.then(function(res) {
+            browser.__set__('open', origOpen);
             done();
-        });
-        result.catch(function(err){
-            done();
+        })
+        .catch(function(err) {
+            browser.__set__('open', origOpen);
+            done(err);
         });
     });
 
     it('should call open() when target is `default`', function(done) {
-
         var mockOpen = jasmine.createSpy('mockOpen');
         var origOpen = browser.__get__('open'); // so we can be nice and restore it later
 
@@ -57,12 +64,15 @@ describe('browser', function() {
         var result = browser({target:'default',url:mockUrl});
         expect(result).toBeDefined();
         expectPromise(result);
+        
         result.then(function(res) {
+            expect(mockOpen).toHaveBeenCalledWith(mockUrl);
+            browser.__set__('open', origOpen);
             done();
+        })
+        .catch(function(err) {
+            browser.__set__('open', origOpen);
+            done(err);
         });
-
-        expect(mockOpen).toHaveBeenCalledWith(mockUrl);
-        browser.__set__('open', origOpen);
-
     });
-});
\ No newline at end of file
+});


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org