From a9c7db2b9abc331da20060069867caf2db4b2e5e Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Mon, 14 Nov 2016 09:03:00 -0800 Subject: [PATCH 1/5] Merge branch 'master' into fastboot --- addon/session-stores/adaptive.js | 25 +++- addon/session-stores/cookie.js | 58 ++++++-- app/routes/application.js | 1 + bower.json | 12 +- guides/managing-current-user.md | 9 +- package.json | 4 +- tests/unit/session-stores/adaptive-test.js | 56 +++++--- tests/unit/session-stores/cookie-test.js | 5 + .../shared/cookie-store-behavior.js | 127 ++++++++++++++++-- 9 files changed, 242 insertions(+), 55 deletions(-) diff --git a/addon/session-stores/adaptive.js b/addon/session-stores/adaptive.js index fab2530c9..61036c62d 100644 --- a/addon/session-stores/adaptive.js +++ b/addon/session-stores/adaptive.js @@ -8,6 +8,22 @@ const { computed } = Ember; const LOCAL_STORAGE_TEST_KEY = '_ember_simple_auth_test_key'; +const proxyToInternalStore = function() { + return computed({ + get(key) { + return this.get(`_${key}`); + }, + set(key, value) { + this.set(`_${key}`, value); + let _store = this.get('_store'); + if (_store) { + _store.set(key, value); + } + return value; + } + }); +}; + /** Session store that persists data in the browser's `localStorage` (see {{#crossLink "LocalStorageStore"}}{{/crossLink}}) if that is available or in @@ -58,7 +74,8 @@ export default Base.extend({ @default null @public */ - cookieDomain: null, + _cookieDomain: null, + cookieDomain: proxyToInternalStore(), /** The name of the cookie to use if `localStorage` is not available. @@ -68,7 +85,8 @@ export default Base.extend({ @default ember_simple_auth-session @public */ - cookieName: 'ember_simple_auth-session', + _cookieName: 'ember_simple_auth-session', + cookieName: proxyToInternalStore(), /** The expiration time for the cookie in seconds if `localStorage` is not @@ -80,7 +98,8 @@ export default Base.extend({ @type Integer @public */ - cookieExpirationTime: null, + _cookieExpirationTime: null, + cookieExpirationTime: proxyToInternalStore(), _isLocalStorageAvailable: computed(function() { try { diff --git a/addon/session-stores/cookie.js b/addon/session-stores/cookie.js index d5ad92d15..0fc39d2cb 100644 --- a/addon/session-stores/cookie.js +++ b/addon/session-stores/cookie.js @@ -3,7 +3,21 @@ import BaseStore from './base'; import objectsAreEqual from '../utils/objects-are-equal'; import getOwner from 'ember-getowner-polyfill'; -const { RSVP, computed, inject: { service }, run: { next, cancel, later }, isEmpty, typeOf, testing } = Ember; +const { RSVP, computed, inject: { service }, run: { next, cancel, later, scheduleOnce }, isEmpty, typeOf, testing, isPresent, K, A, assign } = Ember; + +const persistingProperty = function(beforeSet = K) { + return computed({ + get(key) { + return this.get(`_${key}`); + }, + set(key, value) { + beforeSet.apply(this); + this.set(`_${key}`, value); + scheduleOnce('actions', this, this.rewriteCookie); + return value; + } + }); +}; /** Session store that persists data in a cookie. @@ -55,7 +69,8 @@ export default BaseStore.extend({ @default null @public */ - cookieDomain: null, + _cookieDomain: null, + cookieDomain: persistingProperty(), /** The name of the cookie. @@ -65,7 +80,10 @@ export default BaseStore.extend({ @default ember_simple_auth-session @public */ - cookieName: 'ember_simple_auth-session', + _cookieName: 'ember_simple_auth-session', + cookieName: persistingProperty(function() { + this._oldCookieName = this._cookieName; + }), /** The expiration time for the cookie in seconds. A value of `null` will make @@ -77,7 +95,8 @@ export default BaseStore.extend({ @type Integer @public */ - cookieExpirationTime: null, + _cookieExpirationTime: null, + cookieExpirationTime: persistingProperty(), _cookies: service('cookies'), @@ -146,7 +165,7 @@ export default BaseStore.extend({ @public */ restore() { - let data = this._read(this.cookieName); + let data = this._read(this.get('cookieName')); if (isEmpty(data)) { return RSVP.resolve({}); } else { @@ -162,7 +181,7 @@ export default BaseStore.extend({ @public */ clear() { - this._write(null, 0); + this._write('', 0); this._lastData = {}; return RSVP.resolve(); }, @@ -172,23 +191,30 @@ export default BaseStore.extend({ }, _calculateExpirationTime() { - let cachedExpirationTime = this._read(`${this.cookieName}-expiration_time`); + let cachedExpirationTime = this._read(`${this.get('cookieName')}-expiration_time`); cachedExpirationTime = !!cachedExpirationTime ? new Date().getTime() + cachedExpirationTime * 1000 : null; - return !!this.cookieExpirationTime ? new Date().getTime() + this.cookieExpirationTime * 1000 : cachedExpirationTime; + return this.get('cookieExpirationTime') ? new Date().getTime() + this.get('cookieExpirationTime') * 1000 : cachedExpirationTime; }, _write(value, expiration) { let cookieOptions = { - domain: this.cookieDomain, + domain: this.get('cookieDomain'), expires: isEmpty(expiration) ? null : new Date(expiration), path: '/', secure: this.get('_secureCookies') }; - this.get('_cookies').write(this.cookieName, value, cookieOptions); + if (this._oldCookieName) { + A([this._oldCookieName, `${this._oldCookieName}-expiration_time`]).forEach((oldCookie) => { + let expires = new Date(0); + this.get('_cookies').write(oldCookie, null, assign({}, cookieOptions, { expires })); + }); + delete this._oldCookieName; + } + this.get('_cookies').write(this.get('cookieName'), value, cookieOptions); if (!isEmpty(expiration)) { - let expirationCookieName = `${this.cookieName}-expiration_time`; + let expirationCookieName = `${this.get('cookieName')}-expiration_time`; let cachedExpirationTime = this.get('_cookies').read(expirationCookieName); - this.get('_cookies').write(expirationCookieName, this.cookieExpirationTime || cachedExpirationTime, cookieOptions); + this.get('_cookies').write(expirationCookieName, this.get('cookieExpirationTime') || cachedExpirationTime, cookieOptions); } }, @@ -225,5 +251,13 @@ export default BaseStore.extend({ } else { return RSVP.resolve(); } + }, + + rewriteCookie() { + const data = this._read(this._oldCookieName); + if (isPresent(data)) { + const expiration = this._calculateExpirationTime(); + this._write(data, expiration); + } } }); diff --git a/app/routes/application.js b/app/routes/application.js index dd457cb3b..ee30c9e9a 100644 --- a/app/routes/application.js +++ b/app/routes/application.js @@ -1,3 +1,4 @@ import Ember from 'ember'; +// Ensure the application route exists for ember-simple-auth's `setup-session-restoration` initializer export default Ember.Route.extend(); diff --git a/bower.json b/bower.json index 9323b2fd6..822428f06 100644 --- a/bower.json +++ b/bower.json @@ -1,14 +1,14 @@ { "name": "ember-simple-auth", "dependencies": { + "base64": "~1.0.0", "bootstrap": "~3.3.7", - "ember": "~2.7.0", - "mocha": "~2.2.4", "chai": "~2.3.0", - "ember-mocha-adapter": "~0.3.1", + "ember": "~2.7.0", "ember-cli-shims": "0.1.1", - "sinonjs": "~1.17.1", - "base64": "~1.0.0", - "pretender": "~1.1.0" + "ember-mocha-adapter": "~0.3.1", + "mocha": "~2.2.4", + "pretender": "~1.1.0", + "sinonjs": "~1.17.1" } } diff --git a/guides/managing-current-user.md b/guides/managing-current-user.md index 2e2281ab7..d88c9c444 100644 --- a/guides/managing-current-user.md +++ b/guides/managing-current-user.md @@ -59,12 +59,15 @@ import Ember from 'ember'; const { inject: { service }, isEmpty, RSVP } = Ember; export default Ember.Service.extend({ + session: service('session'), store: service(), load() { - return this.get('store').find('user', 'me').then((user) => { - this.set('user', user); - }); + if (this.get('session.isAuthenticated')) { + return this.get('store').find('user', 'me').then((user) => { + this.set('user', user); + }); + } } }); ``` diff --git a/package.json b/package.json index 65d4b09ec..0e6a60afc 100644 --- a/package.json +++ b/package.json @@ -75,12 +75,12 @@ ], "dependencies": { "ember-cli-babel": "^5.1.6", + "ember-cli-import-polyfill": "^0.2.0", "ember-cli-is-package-missing": "^1.0.0", "ember-cookies": "0.0.9", "ember-getowner-polyfill": "1.0.1", - "silent-error": "^1.0.0", "ember-network": "^0.3.0", - "ember-cli-import-polyfill": "^0.2.0" + "silent-error": "^1.0.0" }, "ember-addon": { "configPath": "tests/dummy/config" diff --git a/tests/unit/session-stores/adaptive-test.js b/tests/unit/session-stores/adaptive-test.js index e598b5b93..33169e103 100644 --- a/tests/unit/session-stores/adaptive-test.js +++ b/tests/unit/session-stores/adaptive-test.js @@ -1,11 +1,13 @@ import Ember from 'ember'; import { describe, beforeEach, afterEach } from 'mocha'; +import { it } from 'ember-mocha'; +import { expect } from 'chai'; +import sinon from 'sinon'; import Adaptive from 'ember-simple-auth/session-stores/adaptive'; import itBehavesLikeAStore from './shared/store-behavior'; -import itBehavesLikeACookieStore from './shared/cookie-store-behavior'; import FakeCookieService from '../../helpers/fake-cookie-service'; -const { assign: emberAssign, merge } = Ember; +const { assign: emberAssign, merge, run } = Ember; const assign = emberAssign || merge; describe('AdaptiveStore', () => { @@ -34,10 +36,18 @@ describe('AdaptiveStore', () => { }); describe('when localStorage is not available', () => { + let cookieService; beforeEach(() => { - store = Adaptive.create({ _isLocalStorageAvailable: false }); - store.set('_store._cookies', FakeCookieService.create()); - store.set('_store._fastboot', { isFastBoot: false }); + cookieService = FakeCookieService.create(); + sinon.spy(cookieService, 'read'); + sinon.spy(cookieService, 'write'); + store = Adaptive.extend({ + _createStore(storeType, options) { + return this._super(storeType, assign({}, options, { _isFastBoot: false, _cookies: cookieService })); + } + }).create({ + _isLocalStorageAvailable: false + }); }); itBehavesLikeAStore({ @@ -46,20 +56,26 @@ describe('AdaptiveStore', () => { } }); - itBehavesLikeACookieStore({ - createStore(cookiesService, options = {}) { - options._isLocalStorageAvailable = false; - const store = Adaptive.create(options); - store.set('_store._cookies', cookiesService); - store.set('_store._fastboot', { isFastBoot: false }); - return store; - }, - renew(store, data) { - store.get('_store')._renew(data); - }, - sync(store) { - store.get('_store')._syncData(); - } + it('persists to cookie when cookie attributes change', () => { + let now = new Date(); + + run(() => { + store.persist({ key: 'value' }); + store.setProperties({ + cookieName: 'test:session', + cookieExpirationTime: 60 + }); + }); + + expect(cookieService.write).to.have.been.calledWith( + 'test:session-expiration_time', + 60, + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && expires >= new Date(now.getTime() + 60 * 1000); + }) + ); }); }); -}); +}); \ No newline at end of file diff --git a/tests/unit/session-stores/cookie-test.js b/tests/unit/session-stores/cookie-test.js index b8343d244..830442a74 100644 --- a/tests/unit/session-stores/cookie-test.js +++ b/tests/unit/session-stores/cookie-test.js @@ -1,5 +1,6 @@ /* jshint expr:true */ import { describe, beforeEach, afterEach } from 'mocha'; +import sinon from 'sinon'; import Cookie from 'ember-simple-auth/session-stores/cookie'; import itBehavesLikeAStore from './shared/store-behavior'; import itBehavesLikeACookieStore from './shared/cookie-store-behavior'; @@ -40,6 +41,10 @@ describe('CookieStore', () => { }, sync(store) { store._syncData(); + }, + spyRewriteCookieMethod(store) { + sinon.spy(store, 'rewriteCookie'); + return store.rewriteCookie; } }); }); diff --git a/tests/unit/session-stores/shared/cookie-store-behavior.js b/tests/unit/session-stores/shared/cookie-store-behavior.js index 67e5715aa..347631320 100644 --- a/tests/unit/session-stores/shared/cookie-store-behavior.js +++ b/tests/unit/session-stores/shared/cookie-store-behavior.js @@ -6,7 +6,7 @@ import { expect } from 'chai'; import sinon from 'sinon'; import FakeCookieService from '../../../helpers/fake-cookie-service'; -const { run: { next } } = Ember; +const { run, run: { next } } = Ember; export default function(options) { let store; @@ -14,6 +14,8 @@ export default function(options) { let renew; let sync; let cookieService; + let spyRewriteCookieMethod; + let unspyRewriteCookieMethod; beforeEach(() => { createStore = options.createStore; @@ -23,6 +25,8 @@ export default function(options) { sinon.spy(cookieService, 'read'); sinon.spy(cookieService, 'write'); store = createStore(cookieService); + spyRewriteCookieMethod = options.spyRewriteCookieMethod; + unspyRewriteCookieMethod = options.unspyRewriteCookieMethod; }); afterEach(() => { @@ -33,8 +37,10 @@ export default function(options) { describe('#persist', function() { it('respects the configured cookieName', () => { - store = createStore(cookieService, { cookieName: 'test-session' }); - store.persist({ key: 'value' }); + run(() => { + store = createStore(cookieService, { cookieName: 'test-session' }); + store.persist({ key: 'value' }); + }); expect(cookieService.write).to.have.been.calledWith( 'test-session', @@ -44,29 +50,46 @@ export default function(options) { }); it('respects the configured cookieDomain', () => { - store = createStore(cookieService, { cookieDomain: 'example.com' }); - store.persist({ key: 'value' }); + run(() => { + store = createStore(cookieService, { + cookieName: 'session-cookie-domain', + cookieDomain: 'example.com' + }); + store.persist({ key: 'value' }); + }); expect(cookieService.write).to.have.been.calledWith( - 'ember_simple_auth-session', + 'session-cookie-domain', JSON.stringify({ key: 'value' }), { domain: 'example.com', expires: null, path: '/', secure: false } ); + expect(cookieService.read('session-cookie-domain')).to.not.contain('session-cookie-domain=%7B%22key%22%3A%22value%22%7D'); }); }); describe('#renew', () => { + let now = new Date(); + beforeEach((done) => { store = createStore(cookieService, { cookieName: 'test-session', - cookieExpirationTime: 60, - expires: new Date().getTime() + store.cookieExpirationTime * 1000 + cookieExpirationTime: 60 }); store.persist({ key: 'value' }); renew(store).then(done); }); - it('stores the expiration time in a cookie named "test-session-expiration_time"'); + it('stores the expiration time in a cookie named "test-session-expiration_time"', () => { + expect(cookieService.write).to.have.been.calledWith( + 'test-session-expiration_time', + 60, + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && expires >= new Date(now.getTime() + 60 * 1000); + }) + ); + }); }); describe('the "sessionDataUpdated" event', () => { @@ -113,4 +136,90 @@ export default function(options) { }); }); }); + + describe('rewrite behavior', () => { + let store; + let cookieSpy; + let cookieService; + let now = new Date(); + + beforeEach(() => { + cookieService = FakeCookieService.create(); + store = createStore(cookieService, { + cookieName: 'session-foo', + cookieExpirationTime: 1000 + }); + cookieService = store.get('_cookies') || store.get('_store._cookies'); + cookieSpy = spyRewriteCookieMethod(store); + sinon.spy(cookieService, 'write'); + }); + + afterEach(() => { + cookieService.write.restore(); + cookieSpy.restore(); + }); + + it('deletes the old cookie and writes a new one when name property changes', () => { + run(() => { + store.persist({ key: 'value' }); + store.set('cookieName', 'session-bar'); + }); + + expect(cookieService.write).to.have.been.calledWith( + 'session-foo', + null, + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && + expires.getTime() === 0; + }) + ); + + expect(cookieService.write).to.have.been.calledWith( + 'session-foo-expiration_time', + null, + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && + expires.getTime() === 0; + }) + ); + + expect(cookieService.write).to.have.been.calledWith( + 'session-bar', + JSON.stringify({ key: 'value' }), + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && + expires >= new Date(now.getTime() + 1000 * 1000); + }) + ); + + expect(cookieService.write).to.have.been.calledWith( + 'session-bar-expiration_time', + 1000, + sinon.match(function({ domain, expires, path, secure }) { + return domain === null && + path === '/' && + secure === false && + expires >= new Date(now.getTime() + 1000 * 1000); + }) + ); + }); + + it('only rewrites the cookie once per run loop when multiple properties are changed', (done) => { + run(() => { + store.set('cookieName', 'session-bar'); + store.set('cookieExpirationTime', 10000); + }); + + next(() => { + expect(cookieSpy).to.have.been.called.once; + done(); + }); + }); + }); } From cea83b68021c977b5a3e3ee5d32576c9fcc7aeeb Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Tue, 15 Nov 2016 00:02:47 -0800 Subject: [PATCH 2/5] Remove unneeded test --- tests/unit/session-stores/shared/cookie-store-behavior.js | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/unit/session-stores/shared/cookie-store-behavior.js b/tests/unit/session-stores/shared/cookie-store-behavior.js index 347631320..1f7aebd40 100644 --- a/tests/unit/session-stores/shared/cookie-store-behavior.js +++ b/tests/unit/session-stores/shared/cookie-store-behavior.js @@ -63,7 +63,6 @@ export default function(options) { JSON.stringify({ key: 'value' }), { domain: 'example.com', expires: null, path: '/', secure: false } ); - expect(cookieService.read('session-cookie-domain')).to.not.contain('session-cookie-domain=%7B%22key%22%3A%22value%22%7D'); }); }); From e98a12fb36f3daf95ff927a95751cb36e28a773d Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Tue, 15 Nov 2016 00:18:42 -0800 Subject: [PATCH 3/5] Refactor to use ember-cookies clear() --- addon/session-stores/cookie.js | 5 ++-- tests/helpers/fake-cookie-service.js | 5 ++++ .../shared/cookie-store-behavior.js | 24 ++++--------------- 3 files changed, 11 insertions(+), 23 deletions(-) diff --git a/addon/session-stores/cookie.js b/addon/session-stores/cookie.js index 0fc39d2cb..62f614afb 100644 --- a/addon/session-stores/cookie.js +++ b/addon/session-stores/cookie.js @@ -3,7 +3,7 @@ import BaseStore from './base'; import objectsAreEqual from '../utils/objects-are-equal'; import getOwner from 'ember-getowner-polyfill'; -const { RSVP, computed, inject: { service }, run: { next, cancel, later, scheduleOnce }, isEmpty, typeOf, testing, isPresent, K, A, assign } = Ember; +const { RSVP, computed, inject: { service }, run: { next, cancel, later, scheduleOnce }, isEmpty, typeOf, testing, isPresent, K, A } = Ember; const persistingProperty = function(beforeSet = K) { return computed({ @@ -205,8 +205,7 @@ export default BaseStore.extend({ }; if (this._oldCookieName) { A([this._oldCookieName, `${this._oldCookieName}-expiration_time`]).forEach((oldCookie) => { - let expires = new Date(0); - this.get('_cookies').write(oldCookie, null, assign({}, cookieOptions, { expires })); + this.get('_cookies').clear(oldCookie); }); delete this._oldCookieName; } diff --git a/tests/helpers/fake-cookie-service.js b/tests/helpers/fake-cookie-service.js index a929a328d..291d85905 100644 --- a/tests/helpers/fake-cookie-service.js +++ b/tests/helpers/fake-cookie-service.js @@ -25,5 +25,10 @@ export default EmberObject.extend({ } else { this._content[name] = encodeURIComponent(value); } + }, + + clear(name) { + let expires = new Date(0); + this.write(name, null, { expires }); } }); diff --git a/tests/unit/session-stores/shared/cookie-store-behavior.js b/tests/unit/session-stores/shared/cookie-store-behavior.js index 1f7aebd40..024fd9796 100644 --- a/tests/unit/session-stores/shared/cookie-store-behavior.js +++ b/tests/unit/session-stores/shared/cookie-store-behavior.js @@ -151,10 +151,12 @@ export default function(options) { cookieService = store.get('_cookies') || store.get('_store._cookies'); cookieSpy = spyRewriteCookieMethod(store); sinon.spy(cookieService, 'write'); + sinon.spy(cookieService, 'clear'); }); afterEach(() => { cookieService.write.restore(); + cookieService.clear.restore(); cookieSpy.restore(); }); @@ -164,27 +166,9 @@ export default function(options) { store.set('cookieName', 'session-bar'); }); - expect(cookieService.write).to.have.been.calledWith( - 'session-foo', - null, - sinon.match(function({ domain, expires, path, secure }) { - return domain === null && - path === '/' && - secure === false && - expires.getTime() === 0; - }) - ); + expect(cookieService.clear).to.have.been.calledWith('session-foo'); - expect(cookieService.write).to.have.been.calledWith( - 'session-foo-expiration_time', - null, - sinon.match(function({ domain, expires, path, secure }) { - return domain === null && - path === '/' && - secure === false && - expires.getTime() === 0; - }) - ); + expect(cookieService.clear).to.have.been.calledWith('session-foo-expiration_time'); expect(cookieService.write).to.have.been.calledWith( 'session-bar', From c2e76384a37498449cd70e2a6b23915fea4bbc07 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Thu, 17 Nov 2016 23:34:11 -0800 Subject: [PATCH 4/5] Try fix for 1.12 --- addon/session-stores/adaptive.js | 5 +++++ tests/unit/session-stores/adaptive-test.js | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/addon/session-stores/adaptive.js b/addon/session-stores/adaptive.js index 00f12dd60..062836cf0 100644 --- a/addon/session-stores/adaptive.js +++ b/addon/session-stores/adaptive.js @@ -103,6 +103,11 @@ export default Base.extend({ cookieExpirationTime: proxyToInternalStore(), _cookies: service('cookies'), + // _cookies: computed(function() { + // let owner = getOwner(this); + + // return owner.lookup('service:cookies'); + // }), _fastboot: computed(function() { let owner = getOwner(this); diff --git a/tests/unit/session-stores/adaptive-test.js b/tests/unit/session-stores/adaptive-test.js index 7be1b84c0..3977b4431 100644 --- a/tests/unit/session-stores/adaptive-test.js +++ b/tests/unit/session-stores/adaptive-test.js @@ -43,10 +43,12 @@ describe('AdaptiveStore', () => { sinon.spy(cookieService, 'write'); store = Adaptive.extend({ _createStore(storeType, options) { - return this._super(storeType, assign({}, options, { _isFastBoot: false, _cookies: cookieService })); + // return this._super(storeType, assign({}, options, { _isFastBoot: false, _cookies: cookieService })); + return this._super(storeType, assign({}, options, { _isFastBoot: false })); } }).create({ - _isLocalStorageAvailable: false + _isLocalStorageAvailable: false, + _cookies: cookieService }); }); From ac8336a70b2b769e4590441c2514b288967e8aa0 Mon Sep 17 00:00:00 2001 From: Steven Wu Date: Thu, 17 Nov 2016 23:45:15 -0800 Subject: [PATCH 5/5] Cleanup --- addon/session-stores/adaptive.js | 5 ----- tests/unit/session-stores/adaptive-test.js | 1 - 2 files changed, 6 deletions(-) diff --git a/addon/session-stores/adaptive.js b/addon/session-stores/adaptive.js index 062836cf0..00f12dd60 100644 --- a/addon/session-stores/adaptive.js +++ b/addon/session-stores/adaptive.js @@ -103,11 +103,6 @@ export default Base.extend({ cookieExpirationTime: proxyToInternalStore(), _cookies: service('cookies'), - // _cookies: computed(function() { - // let owner = getOwner(this); - - // return owner.lookup('service:cookies'); - // }), _fastboot: computed(function() { let owner = getOwner(this); diff --git a/tests/unit/session-stores/adaptive-test.js b/tests/unit/session-stores/adaptive-test.js index 3977b4431..547cac1db 100644 --- a/tests/unit/session-stores/adaptive-test.js +++ b/tests/unit/session-stores/adaptive-test.js @@ -43,7 +43,6 @@ describe('AdaptiveStore', () => { sinon.spy(cookieService, 'write'); store = Adaptive.extend({ _createStore(storeType, options) { - // return this._super(storeType, assign({}, options, { _isFastBoot: false, _cookies: cookieService })); return this._super(storeType, assign({}, options, { _isFastBoot: false })); } }).create({