addon-sdk/source/test/test-object.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* This Source Code Form is subject to the terms of the Mozilla Public
     2  * License, v. 2.0. If a copy of the MPL was not distributed with this
     3  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     4 'use strict';
     6 const { merge, extend, has, each } = require('sdk/util/object');
     8 let o = {
     9   'paper': 0,
    10   'rock': 1,
    11   'scissors': 2
    12 };
    14 //exports.testMerge = function(assert) {}
    15 //exports.testExtend = function(assert) {}
    17 exports.testHas = function(assert) {
    18   assert.equal(has(o, 'paper'), true, 'has correctly finds key');
    19   assert.equal(has(o, 'rock'), true, 'has correctly finds key');
    20   assert.equal(has(o, 'scissors'), true, 'has correctly finds key');
    21   assert.equal(has(o, 'nope'), false, 'has correctly does not find key');
    22   assert.equal(has(o, '__proto__'), false, 'has correctly does not find key');
    23   assert.equal(has(o, 'isPrototypeOf'), false, 'has correctly does not find key');
    24 };
    26 exports.testEach = function(assert) {
    27   var keys = new Set();
    28   each(o, function (value, key, object) {
    29     keys.add(key);
    30     assert.equal(o[key], value, 'Key and value pairs passed in');
    31     assert.equal(o, object, 'Object passed in');
    32   });
    33   assert.equal(keys.size, 3, 'All keys have been iterated upon');
    34 };
    36 require('sdk/test').run(exports);

mercurial