You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

32 lines
892 B

'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");
};