summaryrefslogtreecommitdiff
path: root/jstests/_tst.js
blob: f208164e4b88d73e3d996eb03b68838bb3d3ddc4 (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
/* a general testing framework (helpers) for us in the jstests/

   to use, from your test file:
     testname="mytestname";
     load("jstests/_tst.js");
*/

if( typeof tst == "undefined" ) {
    tst = {}

    tst.log = function (optional_msg) {
        print("\n\nstep " + ++this._step + " " + (optional_msg || ""));
    }

    tst.success = function () {
        print(testname + " SUCCESS");
    }

    /* diff files a and b, returning the difference (empty str if no difference) */
    tst.diff = function(a, b) {
        function reSlash(s) {
            var x = s;
            if (_isWindows()) {
                while (1) {
                    var y = x.replace('/', '\\');
                    if (y == x)
                        break;
                    x = y;
                }
            }
            return x;
        }
        a = reSlash(a);
        b = reSlash(b);
        print("diff " + a + " " + b);
        return run("diff", a, b);
    }
}   

print(testname + " BEGIN");
tst._step = 0;