From 35545306d3f56e883110aceea0f694772d953ef2 Mon Sep 17 00:00:00 2001
From: Andreas Krummsdorf <a.krummsdorf@litixsoft.de>
Date: Wed, 6 Jan 2016 10:18:07 +0100
Subject: [PATCH 1/3] make test working for angular 1.4.x

* implementation of ngCookies has changed in angular 1.4 and therefore the unit tests were failing
* mocked the cookieStore methods to make it working
---
 .../unit/angularStorage/services/storeSpec.js | 47 +++++++++++++++----
 1 file changed, 38 insertions(+), 9 deletions(-)

diff --git a/test/unit/angularStorage/services/storeSpec.js b/test/unit/angularStorage/services/storeSpec.js
index fe1e4e6..e2aaafa 100644
--- a/test/unit/angularStorage/services/storeSpec.js
+++ b/test/unit/angularStorage/services/storeSpec.js
@@ -99,9 +99,22 @@ describe('angularStorage storeProvider.setStore("sessionStorage")', function ()
 describe('angularStorage storeProvider.setStore("sessionStorage")', function () {
 
   var provider, windowMock, $cookieStore;
+  var mockCookieStore = {};
 
   beforeEach(function() {
     module('ngCookies', 'angular-storage.store', function(storeProvider, $provide) {
+
+      // decorator to mock the methods of the cookieStore
+      $provide.decorator('$cookieStore', function ($delegate) {
+        $delegate.put = function (key, value) {
+          mockCookieStore[key] = value;
+        };
+        $delegate.get = function (key) {
+          return mockCookieStore[key];
+        };
+        return $delegate;
+      });
+
       provider = storeProvider;
       provider.setStore('sessionStorage');
 
@@ -237,17 +250,33 @@ describe('angularStorage store: cookie fallback', function() {
     *
     */
 
-    var windowMock, $cookieStore;
+  var windowMock, $cookieStore;
+  var mockCookieStore = {};
+
+  /* provide a mock for $window where localStorage is not defined */
+  beforeEach(module('ngCookies', 'angular-storage.store', function ($provide) {
+
+    // decorator to mock the methods of the cookieStore
+    $provide.decorator('$cookieStore', function ($delegate) {
+      $delegate.put = function (key, value) {
+        mockCookieStore[key] = value;
+      };
+      $delegate.get = function (key) {
+        return mockCookieStore[key];
+      };
+      $delegate.remove = function (key) {
+        delete mockCookieStore[key];
+      };
+      return $delegate;
+    });
 
-    /* provide a mock for $window where localStorage is not defined */
-    beforeEach(module('ngCookies', 'angular-storage.store', function ($provide) {
-        windowMock = { localStorage: undefined };
-        $provide.value('$window', windowMock);
-    }));
+    windowMock = { localStorage: undefined };
+    $provide.value('$window', windowMock);
+  }));
 
-    beforeEach(inject(function( _$cookieStore_) {
-        $cookieStore = _$cookieStore_;
-    }));
+  beforeEach(inject(function (_$cookieStore_) {
+    $cookieStore = _$cookieStore_;
+  }));
 
   it('should save items correctly in localStorage', inject(function(store) {
     var value = 1;
-- 
GitLab


From a20d6b60aedeaf6371766163ecc7239c1d697a0e Mon Sep 17 00:00:00 2001
From: Andreas Krummsdorf <a.krummsdorf@litixsoft.de>
Date: Fri, 26 Feb 2016 08:42:59 +0100
Subject: [PATCH 2/3] fix: add missing bracket in cookieStorage service
 declaration

---
 src/angularStorage/services/cookieStorage.js | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/angularStorage/services/cookieStorage.js b/src/angularStorage/services/cookieStorage.js
index a62adc6..1d065f3 100644
--- a/src/angularStorage/services/cookieStorage.js
+++ b/src/angularStorage/services/cookieStorage.js
@@ -12,4 +12,4 @@ angular.module('angular-storage.cookieStorage', [])
     this.remove = function (what) {
       return $cookies.remove(what);
     };
-  });
+  }]);
-- 
GitLab


From 5ed90d9defac3a0cd4d2b82b1efa49c2e838e522 Mon Sep 17 00:00:00 2001
From: Andreas Krummsdorf <a.krummsdorf@litixsoft.de>
Date: Fri, 26 Feb 2016 08:50:44 +0100
Subject: [PATCH 3/3] tests: make tests working with new $cookies service

---
 .../unit/angularStorage/services/storeSpec.js | 46 +++++++++----------
 1 file changed, 23 insertions(+), 23 deletions(-)

diff --git a/test/unit/angularStorage/services/storeSpec.js b/test/unit/angularStorage/services/storeSpec.js
index e2aaafa..6edb60f 100644
--- a/test/unit/angularStorage/services/storeSpec.js
+++ b/test/unit/angularStorage/services/storeSpec.js
@@ -98,14 +98,14 @@ describe('angularStorage storeProvider.setStore("sessionStorage")', function ()
 
 describe('angularStorage storeProvider.setStore("sessionStorage")', function () {
 
-  var provider, windowMock, $cookieStore;
+  var provider, windowMock, $cookies;
   var mockCookieStore = {};
 
   beforeEach(function() {
     module('ngCookies', 'angular-storage.store', function(storeProvider, $provide) {
 
       // decorator to mock the methods of the cookieStore
-      $provide.decorator('$cookieStore', function ($delegate) {
+      $provide.decorator('$cookies', function ($delegate) {
         $delegate.put = function (key, value) {
           mockCookieStore[key] = value;
         };
@@ -123,8 +123,8 @@ describe('angularStorage storeProvider.setStore("sessionStorage")', function ()
     });
   });
 
-  beforeEach(inject(function( _$cookieStore_) {
-    $cookieStore = _$cookieStore_;
+  beforeEach(inject(function( _$cookies_) {
+    $cookies = _$cookies_;
   }));
 
   it('should fallback to cookieStorage', inject(function(store) {
@@ -132,7 +132,7 @@ describe('angularStorage storeProvider.setStore("sessionStorage")', function ()
     store.set('gonto123', value);
 
     expect(store.get('gonto123')).to.equal(value);
-    expect($cookieStore.get('gonto123')).to.equal(JSON.stringify(value));
+    expect($cookies.get('gonto123')).to.equal(JSON.stringify(value));
   }));
 });
 
@@ -160,7 +160,7 @@ describe('angularStorage storeProvider.setStore("localStorage")', function () {
 describe('angularStorage storeProvider.setStore("cookieStorage")', function () {
 
   var provider;
-  var $cookieStore;
+  var $cookies;
 
   beforeEach(function() {
     module('ngCookies', 'angular-storage.store', function(storeProvider) {
@@ -169,8 +169,8 @@ describe('angularStorage storeProvider.setStore("cookieStorage")', function () {
     });
   });
 
-  beforeEach(inject(function( _$cookieStore_) {
-    $cookieStore = _$cookieStore_;
+  beforeEach(inject(function( _$cookies_) {
+    $cookies = _$cookies_;
   }));
 
   it('should save items correctly in the cookieStorage', inject(function(store) {
@@ -178,7 +178,7 @@ describe('angularStorage storeProvider.setStore("cookieStorage")', function () {
     store.set('gonto', value);
 
     expect(store.get('gonto')).to.equal(value);
-    expect($cookieStore.get('gonto')).to.equal(JSON.stringify(value));
+    expect($cookies.get('gonto')).to.equal(JSON.stringify(value));
   }));
 });
 
@@ -250,14 +250,14 @@ describe('angularStorage store: cookie fallback', function() {
     *
     */
 
-  var windowMock, $cookieStore;
+  var windowMock, $cookies;
   var mockCookieStore = {};
 
   /* provide a mock for $window where localStorage is not defined */
   beforeEach(module('ngCookies', 'angular-storage.store', function ($provide) {
 
     // decorator to mock the methods of the cookieStore
-    $provide.decorator('$cookieStore', function ($delegate) {
+    $provide.decorator('$cookies', function ($delegate) {
       $delegate.put = function (key, value) {
         mockCookieStore[key] = value;
       };
@@ -274,29 +274,29 @@ describe('angularStorage store: cookie fallback', function() {
     $provide.value('$window', windowMock);
   }));
 
-  beforeEach(inject(function (_$cookieStore_) {
-    $cookieStore = _$cookieStore_;
+  beforeEach(inject(function (_$cookies_) {
+    $cookies = _$cookies_;
   }));
 
   it('should save items correctly in localStorage', inject(function(store) {
     var value = 1;
     store.set('gonto', value);
     expect(store.get('gonto')).to.equal(value); //this line asserts that value was saved by our service
-    expect($cookieStore.get('gonto')).to.equal(JSON.stringify(value)); //this line asserts that cookie store was used
+    expect($cookies.get('gonto')).to.equal(JSON.stringify(value)); //this line asserts that cookie store was used
   }));
 
   it('should save null items correctly in localStorage', inject(function(store) {
     store.set('gonto', null);
     store.inMemoryCache = {};
     expect(store.get('gonto')).to.equal(null);
-    expect($cookieStore.get('gonto')).to.equal(JSON.stringify(null));
+    expect($cookies.get('gonto')).to.equal(JSON.stringify(null));
   }));
 
   it('should save undefined items correctly in localStorage', inject(function(store) {
     store.set('gonto', undefined);
     store.inMemoryCache = {};
     expect(store.get('gonto')).to.equal(undefined);
-    expect($cookieStore.get('gonto')).to.equal(JSON.stringify(undefined));
+    expect($cookies.get('gonto')).to.equal(JSON.stringify(undefined));
   }));
 
   it('should delete items correctly from localStorage', inject(function(store) {
@@ -305,7 +305,7 @@ describe('angularStorage store: cookie fallback', function() {
     expect(store.get('gonto')).to.equal(value);
     store.remove('gonto');
     expect(store.get('gonto')).to.not.exist;
-    expect($cookieStore.get('gonto')).to.not.exist;
+    expect($cookies.get('gonto')).to.not.exist;
   }));
 
   it('should save objects correctly', inject(function(store) {
@@ -322,7 +322,7 @@ describe('angularStorage store: cookie fallback', function() {
     };
     store.set('gonto', value);
     expect(store.get('gonto')).to.eql(value);
-    expect($cookieStore.get('gonto')).to.equal(JSON.stringify(value));
+    expect($cookies.get('gonto')).to.equal(JSON.stringify(value));
   }));
 
   it('should save objects correctly without cache', inject(function(store) {
@@ -343,7 +343,7 @@ describe('angularStorage store: cookie fallback', function() {
     store.inMemoryCache = {};
     expect(store.get('gonto')).to.eql(value);
     expect(store.get('gonto')).not.to.equal(value);
-    expect($cookieStore.get('gonto')).to.eql(JSON.stringify(value));
+    expect($cookies.get('gonto')).to.eql(JSON.stringify(value));
 
   }));
 
@@ -424,10 +424,10 @@ describe('angularStorage new namespaced store', function() {
   }));
 
   describe('with param storage', function () {
-    var $cookieStore;
+    var $cookies;
 
-    beforeEach(inject(function( _$cookieStore_) {
-      $cookieStore = _$cookieStore_;
+    beforeEach(inject(function( _$cookies_) {
+      $cookies = _$cookies_;
     }));
 
     it('should should save items correctly when the storage is set to sessionStorage', inject(function(store, $window) {
@@ -458,7 +458,7 @@ describe('angularStorage new namespaced store', function() {
       cookieStore.set('wayne', value);
 
       expect(cookieStore.get('wayne')).to.equal(value);
-      expect($cookieStore.get('cc.wayne')).to.equal(JSON.stringify(value));
+      expect($cookies.get('cc.wayne')).to.equal(JSON.stringify(value));
     }));
   });
 });
-- 
GitLab