accessors.js 1.7 KB

123456789101112131415161718192021222324252627282930313233
  1. (function (ns) {
  2. 'use strict';
  3. QUnit.module("Accessors");
  4. QUnit.test("Misago.has accessor", function(assert) {
  5. var test_obj = {valid: 'okay'};
  6. assert.equal(ns.has(test_obj, 'invalid'), false, "Misago.has() returned false for nonexisting key");
  7. assert.equal(ns.has(test_obj, 'valid'), true, "Misago.has() returned true for existing key");
  8. });
  9. QUnit.test("Misago.get accessor", function(assert) {
  10. var test_obj = {valid: 'okay'};
  11. assert.equal(ns.get(test_obj, 'invalid'), undefined, "Misago.get() returned undefined for nonexisting key");
  12. assert.equal(ns.get(test_obj, 'invalid', 'fallback'), 'fallback', "Misago.get() returned fallback value for nonexisting key");
  13. assert.equal(ns.get(test_obj, 'valid'), 'okay', "Misago.get() returned value for existing key");
  14. assert.equal(ns.get(test_obj, 'valid', 'fallback'), 'okay', "Misago.get() returned value for existing key instead of fallback");
  15. });
  16. QUnit.test("Misago.pop accessor", function(assert) {
  17. var test_obj = {valid: 'okay', other_valid: 'okay'};
  18. assert.equal(ns.pop(test_obj, 'invalid'), undefined, "Misago.pop() returned undefined for nonexisting key");
  19. assert.equal(ns.pop(test_obj, 'invalid', 'fallback'), 'fallback', "Misago.pop() returned fallback value for nonexisting key");
  20. assert.equal(ns.pop(test_obj, 'valid'), 'okay', "Misago.pop() returned value for existing key");
  21. assert.equal(ns.pop(test_obj, 'other_valid', 'fallback'), 'okay', "Misago.pop() returned value for existing key instead of fallback");
  22. assert.equal(ns.has(test_obj, 'valid'), false, "Misago.pop() removed valid key from object");
  23. assert.equal(ns.has(test_obj, 'other_valid'), false, "Misago.pop() removed other valid key from object");
  24. });
  25. }(Misago.prototype));