summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/tracelogger/setupTraceLogger.js
blob: 1c409739d8669751334322772b4161f2458a7ce1 (plain)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70

var du = new Debugger();
if (typeof du.setupTraceLogger == "function") {

    // Try enabling.
    assertEq(du.setupTraceLogger({
        Scripts: true
    }), true);

    // No fail on re-enabling.
    assertEq(du.setupTraceLogger({
        Scripts: true
    }), true);

    // Try disabling.
    assertEq(du.setupTraceLogger({
        Scripts: false
    }), true);

    // No fail on re-disabling.
    assertEq(du.setupTraceLogger({
        Scripts: false
    }), true);

    // Throw exception if TraceLog item to report isn't found.
    var success = du.setupTraceLogger({
        Scripts: false,
        Test: true
    });
    assertEq(success, false);

    // SetupTraceLogger only enables individual items,
    // when all items can be toggled.
    du.startTraceLogger();
    var obj = du.drainTraceLogger();
    du.setupTraceLogger({
        Scripts: true,
        Test: true,
    });
    assertEq(du.drainTraceLogger().length, 0);
    du.endTraceLogger();

    // Expects an object as first argument.
    succes = du.setupTraceLogger("blaat");
    assertEq(succes, false);

    // Expects an object as first argument.
    succes = du.setupTraceLogger("blaat");
    assertEq(succes, false);

    // Expects an object as first argument.
    failed = false;
    try {
        du.setupTraceLogger();
    } catch (e) {
        failed = true;
    }
    assertEq(failed, true);

    // No problem with added to many arguments.
    succes = du.setupTraceLogger({}, "test");
    assertEq(succes, true);
}

var du2 = new Debugger();
if (typeof du2.setupTraceLoggerForTraces == "function") {
    du2.setupTraceLoggerForTraces({});
    du2.setupTraceLoggerForTraces("test");
    du2.setupTraceLoggerForTraces({}, "test");
}