2012-07-03 13:28:53 -04:00
|
|
|
//
|
|
|
|
|
// Tests launching multi-version ReplSetTest replica sets
|
|
|
|
|
//
|
|
|
|
|
|
2013-01-03 14:14:02 -05:00
|
|
|
// Check our latest versions
|
2016-03-09 12:17:50 -05:00
|
|
|
var versionsToCheck = ["last-stable", "latest"];
|
2013-01-03 14:14:02 -05:00
|
|
|
|
|
|
|
|
load('./jstests/multiVersion/libs/verify_versions.js');
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
jsTest.log("Testing legacy versions...");
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
for (var i = 0; i < versionsToCheck.length; i++) {
|
|
|
|
|
var version = versionsToCheck[i];
|
2012-07-03 13:28:53 -04:00
|
|
|
|
|
|
|
|
// Set up a replica set
|
2016-03-09 12:17:50 -05:00
|
|
|
|
|
|
|
|
var rst = new ReplSetTest({nodes: 2});
|
|
|
|
|
|
|
|
|
|
rst.startSet({binVersion: version});
|
|
|
|
|
|
2016-02-04 12:29:45 -05:00
|
|
|
var nodes = rst.nodes;
|
2016-03-09 12:17:50 -05:00
|
|
|
|
2012-07-03 13:28:53 -04:00
|
|
|
// Make sure the started versions are actually the correct versions
|
2016-03-09 12:17:50 -05:00
|
|
|
for (var j = 0; j < nodes.length; j++)
|
|
|
|
|
assert.binVersion(nodes[j], version);
|
|
|
|
|
|
2016-02-04 12:29:45 -05:00
|
|
|
rst.stopSet();
|
2012-07-03 13:28:53 -04:00
|
|
|
}
|
|
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
jsTest.log("Testing mixed versions...");
|
2012-07-03 13:28:53 -04:00
|
|
|
|
|
|
|
|
// Set up a multi-version replica set
|
|
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
var rst = new ReplSetTest({nodes: 2});
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
rst.startSet({binVersion: versionsToCheck});
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-02-04 12:29:45 -05:00
|
|
|
var nodes = rst.nodes;
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
// Make sure we have hosts of all the different versions
|
2016-02-04 12:29:45 -05:00
|
|
|
var versionsFound = [];
|
2016-03-09 12:17:50 -05:00
|
|
|
for (var j = 0; j < nodes.length; j++)
|
2013-01-03 14:14:02 -05:00
|
|
|
versionsFound.push(nodes[j].getBinVersion());
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2013-01-03 14:14:02 -05:00
|
|
|
assert.allBinVersions(versionsToCheck, versionsFound);
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-02-04 12:29:45 -05:00
|
|
|
rst.stopSet();
|
2012-07-03 13:28:53 -04:00
|
|
|
|
2016-03-09 12:17:50 -05:00
|
|
|
jsTest.log("Done!");
|
2012-07-03 13:28:53 -04:00
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// End
|
|
|
|
|
//
|