There are likely more JavaScript tests which have been added since
r3.6.9 that still need to be tagged.
(cherry picked from commit 05ec08fa62)
37 lines
1.4 KiB
JavaScript
37 lines
1.4 KiB
JavaScript
// Test mongo shell connect strings.
|
|
// @tags: [
|
|
// uses_multiple_connections,
|
|
// ]
|
|
(function() {
|
|
'use strict';
|
|
|
|
const mongod = new MongoURI(db.getMongo().host).servers[0];
|
|
const host = mongod.host;
|
|
const port = mongod.port;
|
|
|
|
function testConnect(ok, ...args) {
|
|
const exitCode = runMongoProgram('mongo', '--eval', ';', ...args);
|
|
if (ok) {
|
|
assert.eq(exitCode, 0, "failed to connect with `" + args.join(' ') + "`");
|
|
} else {
|
|
assert.neq(
|
|
exitCode, 0, "unexpectedly succeeded connecting with `" + args.join(' ') + "`");
|
|
}
|
|
}
|
|
|
|
testConnect(true, `${host}:${port}`);
|
|
testConnect(true, `${host}:${port}/test`);
|
|
testConnect(true, `${host}:${port}/admin`);
|
|
testConnect(true, host, '--port', port);
|
|
testConnect(true, '--host', host, '--port', port, 'test');
|
|
testConnect(true, '--host', host, '--port', port, 'admin');
|
|
testConnect(true, `mongodb://${host}:${port}/test`);
|
|
testConnect(true, `mongodb://${host}:${port}/test?connectTimeoutMS=10000`);
|
|
|
|
// if a full URI is provided, you cannot also specify host or port
|
|
testConnect(false, `${host}/test`, '--port', port);
|
|
testConnect(false, `mongodb://${host}:${port}/test`, '--port', port);
|
|
testConnect(false, `mongodb://${host}:${port}/test`, '--host', host);
|
|
testConnect(false, `mongodb://${host}:${port}/test`, '--host', host, '--port', port);
|
|
})();
|