summaryrefslogtreecommitdiff
path: root/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js')
-rw-r--r--tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js32
1 files changed, 32 insertions, 0 deletions
diff --git a/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js b/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js
new file mode 100644
index 0000000000..0d2d4da04a
--- /dev/null
+++ b/tools/eslint/node_modules/escope/node_modules/es6-weak-map/node_modules/es5-ext/test/object/normalize-options.js
@@ -0,0 +1,32 @@
+'use strict';
+
+var create = Object.create, defineProperty = Object.defineProperty;
+
+module.exports = function (t, a) {
+ var x = { foo: 'raz', bar: 'dwa' }, y;
+ y = t(x);
+ a.not(y, x, "Returns copy");
+ a.deep(y, x, "Plain");
+
+ x = { raz: 'one', dwa: 'two' };
+ defineProperty(x, 'get', {
+ configurable: true,
+ enumerable: true,
+ get: function () { return this.dwa; }
+ });
+ x = create(x);
+ x.trzy = 'three';
+ x.cztery = 'four';
+ x = create(x);
+ x.dwa = 'two!';
+ x.trzy = 'three!';
+ x.piec = 'five';
+ x.szesc = 'six';
+
+ a.deep(t(x), { raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
+ piec: 'five', szesc: 'six', get: 'two!' }, "Deep object");
+
+ a.deep(t({ marko: 'raz', raz: 'foo' }, x, { szesc: 'elo', siedem: 'bibg' }),
+ { marko: 'raz', raz: 'one', dwa: 'two!', trzy: 'three!', cztery: 'four',
+ piec: 'five', szesc: 'elo', siedem: 'bibg', get: 'two!' }, "Multiple options");
+};