Beispiel #1
0
export function register(container, preferences) {
  // Configure the service
  var storage;

  if (isLocalStorageAvailable()) {
    storage = localStorage(preferences.namespace)
  } else {
    storage = MemoryStorage.create();
  }

  storage = ExpirableStorage.create({
    content: storage
  });

  container.register(
    'service:preferences',
    Service.create({ _storage: storage }),
    { instantiate: false }
  );
}
import ExpirableStorage, { expirable, isExpirable } from 'ember-preferences/storage/expirable';

let subject;
let actualStorage;

function oneSecondInTheFuture() {
  return (+new Date()) + 1000;
}

function oneSecondInThePast() {
  return (+new Date()) - 1000;
}

module('Unit | Storage | expirable decorator', {
  beforeEach() {
    actualStorage = MemoryStorage.create();
    subject = ExpirableStorage.create({
      content: actualStorage,
      expirations: {
        qux() {
          return oneSecondInTheFuture();
        },

        quxx() {
          return oneSecondInThePast();
        }
      }
    });
  }
});