preloadstore-test.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import PreloadStore from '../../../utils/preloadstore';
  2. import { module, test } from 'qunit';
  3. module('PreloadStore');
  4. test('has(key) method returns true for existing keys', function(assert) {
  5. assert.expect(3);
  6. assert.ok(PreloadStore.has('staticUrl'));
  7. assert.ok(PreloadStore.has('mediaUrl'));
  8. assert.ok(PreloadStore.has('misagoSettings'));
  9. });
  10. test('has(key) method returns false for undefined keys', function(assert) {
  11. assert.expect(1);
  12. assert.equal(PreloadStore.has('notExisting'), false);
  13. });
  14. test('get(key) method returns value for defined key', function(assert) {
  15. assert.expect(2);
  16. assert.equal(PreloadStore.get('misagoSettings'), window.MisagoData.misagoSettings);
  17. assert.equal(PreloadStore.get('mediaUrl'), window.MisagoData.mediaUrl);
  18. });
  19. test('get(key) method returns undefined for undefined key', function(assert) {
  20. assert.expect(1);
  21. assert.equal(PreloadStore.get('undefinedKey'), undefined);
  22. });
  23. test('get(key, default) method returns default value for undefined key', function(assert) {
  24. assert.expect(2);
  25. var key = 'undefinedKey';
  26. var defaultValue = 'Default value';
  27. assert.equal(PreloadStore.get(key, defaultValue), defaultValue);
  28. assert.ok(!PreloadStore.has(key));
  29. });
  30. test('get(key, default) method returns value for defined key', function(assert) {
  31. assert.expect(2);
  32. var key = 'mediaUrl';
  33. assert.equal(PreloadStore.get(key, 'Default Value'), window.MisagoData.mediaUrl);
  34. assert.ok(PreloadStore.has(key));
  35. });
  36. test('set(key, value) method sets new value', function(assert) {
  37. assert.expect(3);
  38. var key = 'testKey';
  39. var value = 'Lo Bob!';
  40. assert.equal(PreloadStore.set(key, value), value);
  41. assert.equal(PreloadStore.get(key), value);
  42. assert.ok(PreloadStore.has(key));
  43. });
  44. test('pop(key, default) method returns default undefined for key', function(assert) {
  45. assert.expect(2);
  46. var key = 'undefinedKey';
  47. var defaultValue = 'Default value';
  48. assert.equal(PreloadStore.get(key, defaultValue), defaultValue);
  49. assert.ok(!PreloadStore.has(key));
  50. });
  51. test('pop(key, default) method returns and deletes value for key', function(assert) {
  52. assert.expect(3);
  53. var key = 'undefinedKey';
  54. var realValue = 'valid value!';
  55. var defaultValue = 'Default value';
  56. PreloadStore.set(key, realValue);
  57. assert.equal(PreloadStore.pop(key, defaultValue), realValue);
  58. assert.equal(PreloadStore.pop(key, defaultValue), defaultValue);
  59. assert.ok(!PreloadStore.has(key));
  60. });