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
|
//
// simple runner to run toplevel tests in jstests
//
//TODO(mathias) add --master or make another test
//conn = startMongodEmpty("--port", 30200, "--dbpath", "/data/db/dur_passthrough", "--dur", "--smallfiles", "--durOptions", "24");
conn = startMongodEmpty("--port", 30200, "--dbpath", "/data/db/dur_passthrough", "--dur", "--nopreallocj", "--smallfiles",
"--durOptions", "8");
db = conn.getDB("test");
function doTest() {
var files = listFiles("jstests");
files = files.sort(compareOn('name'));
var runnerStart = new Date()
files.forEach(
function (x) {
if (/[\/\\]_/.test(x.name) ||
!/\.js$/.test(x.name) ||
/repair/.test(x.name) || // fails on recovery
/shellkillop/.test(x.name) || // takes forever and don't test anything new
false // placeholder so all real tests end in ||
)
{
print(" >>>>>>>>>>>>>>> skipping " + x.name);
return;
}
print();
print(" *******************************************");
print(" Test : " + x.name + " ...");
print(" " + Date.timeFunc(function () { load(x.name); }, 1) + "ms");
gc(); // TODO SERVER-8683: remove gc() calls once resolved
}
);
stopMongod(30200);
var runnerEnd = new Date()
print( "total runner time: " + ( ( runnerEnd.getTime() - runnerStart.getTime() ) / 1000 ) + "secs" )
}
if (db.serverBuildInfo().bits == 64 &&
db.serverBuildInfo().debug == false &&
db.hostInfo().os.type == "Linux")
{
doTest();
}
else {
print("Skipping. Only run this test on non-debug, 64bit, Linux builds");
}
//TODO(mathias): test recovery here
|