Ejemplo n.º 1
0
function localStorage(namespace) {
  var storage = SerializableStorage.create({
    content: window.localStorage
  });

  if (namespace) {
    storage = NamespaceableStorage.create({
      namespace,
      content: storage
    });
  }

  return storage;
}
import { module, test } from 'qunit';
import MemoryStorage from 'ember-preferences/storage/memory';
import SerializableStore from 'ember-preferences/storage/serializable';

var subject,
    actualStorage;

module('Unit | Storage | memory storage', {
  beforeEach() {
    actualStorage = MemoryStorage.create();
    subject = SerializableStore.create({ content: actualStorage });
  }
});

test('serializes objects', function(assert) {
  subject.setItem('foo', { bar: 'baz' });

  assert.equal(actualStorage.getItem('foo'), '{"bar":"baz"}');
});

test('does not serialize undefined values', function(assert) {
  subject.setItem('foo', undefined);

  assert.equal(actualStorage.getItem('foo'), undefined);
});

test('does not serialize null values', function(assert) {
  subject.setItem('foo', undefined);

  assert.equal(actualStorage.getItem('foo'), undefined);
});