heyujie
2021-05-20 6ebdefb4a5b2be82a8c452c0bb4624f3d85a17b7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
"use strict";
 
var stringify = JSON.stringify;
 
module.exports = function (t, a) {
    var o = { 1: "raz", 2: "dwa", 3: "trzy" }, no = t(o);
 
    a.not(no, o, "Return different object");
    a(stringify(no), stringify(o), "Match properties and values");
 
    o = {
        foo: "bar",
        raz: {
            dwa: "dwa",
            trzy: { cztery: "pięć", sześć: "siedem" },
            osiem: {},
            dziewięć: function () {}
        },
        dziesięć: 10,
        jedenaście: ["raz", ["dwa", "trzy", { elo: "true" }]]
    };
    o.raz.rec = o;
 
    no = t(o);
    a.not(o.raz, no.raz, "Deep");
    a.not(o.raz.trzy, no.raz.trzy, "Deep #2");
    a(stringify(o.raz.trzy), stringify(no.raz.trzy), "Deep content");
    a(no.raz.rec, no, "Recursive");
    a.not(o.raz.osiem, no.raz.osiem, "Empty object");
    a(o.raz["dziewięć"], no.raz["dziewięć"], "Function");
    a.not(o["jedenaście"], no["jedenaście"]);
    a.not(o["jedenaście"][1], no["jedenaście"][1]);
    a.not(o["jedenaście"][1][2], no["jedenaście"][1][2]);
    a(t(true), true);
};