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
|
// Verify error is produced when specifying an invalid set parameter.
(function() {
'use strict';
TestData.enableTestCommands = false;
function tryRun(arg) {
// runMongoProgram helpfully makes certain that we pass a port when invoking mongod.
return runMongoProgram('mongod', '--port', 0, '--setParameter', arg, '--outputConfig');
}
// Positive case, valid setparam.
clearRawMongoProgramOutput();
const valid = tryRun('enableTestCommands=1');
assert.eq(valid, 0);
const validOutput = rawMongoProgramOutput();
assert.gte(validOutput.search(/enableTestCommands: 1/), 0, validOutput);
// Negative case, invalid setparam.
clearRawMongoProgramOutput();
const foo = tryRun('foo=bar');
assert.neq(foo, 0);
const fooOutput = rawMongoProgramOutput();
assert.gte(fooOutput.search(/Unknown --setParameter 'foo'/), 0, fooOutput);
// Negative case, valid but unavailable setparam.
clearRawMongoProgramOutput();
const graph = tryRun('roleGraphInvalidationIsFatal=true');
assert.neq(graph, 0);
const graphOutput = rawMongoProgramOutput();
assert.gte(
graphOutput.search(
/--setParameter 'roleGraphInvalidationIsFatal' only available when used with 'enableTestCommands'/),
0,
fooOutput);
}());
|