heyujie
2021-05-24 4885600ecc369aa2e30a65de8dd7a410f13c34df
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
/* eslint no-eval: "off" */
 
"use strict";
 
module.exports = function (t, a) {
    a.deep(t.call(function (a, b) { return this[a] + this[b]; }), {
        args: "a, b",
        body: " return this[a] + this[b]; "
    });
    a.deep(t.call(function () {}), { args: "", body: "" });
    // eslint-disable-next-line no-unused-vars
    a.deep(t.call(function (raz) {}), { args: "raz", body: "" });
    a.deep(t.call(function () { Object(); }), { args: "", body: " Object(); " });
 
    try {
        eval("(() => {})");
    } catch (e) {
        // Non ES2015 env
        return;
    }
 
    a.deep(t.call(eval("(() => {})")), { args: "", body: "" });
    a.deep(t.call(eval("((elo) => foo)")), { args: "elo", body: "foo" });
    a.deep(t.call(eval("(elo => foo)")), { args: "elo", body: "foo" });
    a.deep(t.call(eval("((elo, bar) => foo())")), { args: "elo, bar", body: "foo()" });
};