diff options
author | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2015-04-09 17:41:31 -0400 |
---|---|---|
committer | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2015-04-09 22:01:04 -0400 |
commit | 3936e6af141666a9c6a29ce14acfd4dff3954321 (patch) | |
tree | d798073a5d5d15621c50e8a550c98dd0dea9ff5d /jstests/core | |
parent | ece55be910a5f3dc1a888353be70edc787bf96cc (diff) | |
download | mongo-3936e6af141666a9c6a29ce14acfd4dff3954321.tar.gz |
SERVER-17972 Fix basic.js/basicPlus.js and durability
When run in parallel, the tests that this commit changes cause the 'db'
variable to be modified and impact other tests.
Diffstat (limited to 'jstests/core')
-rw-r--r-- | jstests/core/explain_missing_collection.js | 98 | ||||
-rw-r--r-- | jstests/core/explain_missing_database.js | 98 | ||||
-rw-r--r-- | jstests/core/indexes_on_indexes.js | 44 | ||||
-rw-r--r-- | jstests/core/list_indexes_non_existent_ns.js | 25 |
4 files changed, 136 insertions, 129 deletions
diff --git a/jstests/core/explain_missing_collection.js b/jstests/core/explain_missing_collection.js index c7ccd4c5a10..93af3ed8fd0 100644 --- a/jstests/core/explain_missing_collection.js +++ b/jstests/core/explain_missing_collection.js @@ -1,49 +1,51 @@ // Test explain of various operations against a non-existent collection -var missingColl = db.explain_null_collection; - -var explain; -var explainColl; - -// .find() -missingColl.drop(); -explain = missingColl.explain("executionStats").find().finish(); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .count() -missingColl.drop(); -explain = missingColl.explain("executionStats").count(); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .group() -missingColl.drop(); -explainColl = missingColl.explain("executionStats"); -explain = explainColl.group({key: "a", initial: {}, reduce: function() { } }); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .remove() -missingColl.drop(); -explain = missingColl.explain("executionStats").remove({a: 1}); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .update() with upsert: false -missingColl.drop(); -explainColl = missingColl.explain("executionStats"); -explain = explainColl.update({a: 1}, {b: 1}); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .update() with upsert: true -missingColl.drop(); -explainColl = missingColl.explain("executionStats"); -explain = explainColl.update({a: 1}, {b: 1}, {upsert: true}); -assert.commandWorked(explain); -assert("executionStats" in explain); - -// .aggregate() -missingColl.drop(); -explain = missingColl.explain("executionStats").aggregate([{$match: {a: 1}}]); -assert.commandWorked(explain); +(function() { + var missingColl = db.explain_null_collection; + + var explain; + var explainColl; + + // .find() + missingColl.drop(); + explain = missingColl.explain("executionStats").find().finish(); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .count() + missingColl.drop(); + explain = missingColl.explain("executionStats").count(); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .group() + missingColl.drop(); + explainColl = missingColl.explain("executionStats"); + explain = explainColl.group({key: "a", initial: {}, reduce: function() { } }); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .remove() + missingColl.drop(); + explain = missingColl.explain("executionStats").remove({a: 1}); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .update() with upsert: false + missingColl.drop(); + explainColl = missingColl.explain("executionStats"); + explain = explainColl.update({a: 1}, {b: 1}); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .update() with upsert: true + missingColl.drop(); + explainColl = missingColl.explain("executionStats"); + explain = explainColl.update({a: 1}, {b: 1}, {upsert: true}); + assert.commandWorked(explain); + assert("executionStats" in explain); + + // .aggregate() + missingColl.drop(); + explain = missingColl.explain("executionStats").aggregate([{$match: {a: 1}}]); + assert.commandWorked(explain); +}()); diff --git a/jstests/core/explain_missing_database.js b/jstests/core/explain_missing_database.js index eea1fe6462f..5fff4502361 100644 --- a/jstests/core/explain_missing_database.js +++ b/jstests/core/explain_missing_database.js @@ -1,49 +1,51 @@ // Test explain of various operations against a non-existent database
-var explainMissingDb = db.getSiblingDB("explainMissingDb");
-
-var explain;
-var explainColl;
-
-// .find()
-explainMissingDb.dropDatabase();
-explain = explainMissingDb.collection.explain("executionStats").find().finish();
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .count()
-explainMissingDb.dropDatabase();
-explain = explainMissingDb.collection.explain("executionStats").count();
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .group()
-explainMissingDb.dropDatabase();
-explainColl = explainMissingDb.collection.explain("executionStats");
-explain = explainColl.group({key: "a", initial: {}, reduce: function() { } });
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .remove()
-explainMissingDb.dropDatabase();
-explain = explainMissingDb.collection.explain("executionStats").remove({a: 1});
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .update() with upsert: false
-explainMissingDb.dropDatabase();
-explainColl = explainMissingDb.collection.explain("executionStats");
-explain = explainColl.update({a: 1}, {b: 1});
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .update() with upsert: true
-explainMissingDb.dropDatabase();
-explainColl = explainMissingDb.collection.explain("executionStats");
-explain = explainColl.update({a: 1}, {b: 1}, {upsert: true});
-assert.commandWorked(explain);
-assert("executionStats" in explain);
-
-// .aggregate()
-explainMissingDb.dropDatabase();
-explain = explainMissingDb.collection.explain("executionStats").aggregate([{$match: {a: 1}}]);
-assert.commandWorked(explain);
+(function() {
+ var explainMissingDb = db.getSiblingDB("explainMissingDb");
+
+ var explain;
+ var explainColl;
+
+ // .find()
+ explainMissingDb.dropDatabase();
+ explain = explainMissingDb.collection.explain("executionStats").find().finish();
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .count()
+ explainMissingDb.dropDatabase();
+ explain = explainMissingDb.collection.explain("executionStats").count();
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .group()
+ explainMissingDb.dropDatabase();
+ explainColl = explainMissingDb.collection.explain("executionStats");
+ explain = explainColl.group({key: "a", initial: {}, reduce: function() { } });
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .remove()
+ explainMissingDb.dropDatabase();
+ explain = explainMissingDb.collection.explain("executionStats").remove({a: 1});
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .update() with upsert: false
+ explainMissingDb.dropDatabase();
+ explainColl = explainMissingDb.collection.explain("executionStats");
+ explain = explainColl.update({a: 1}, {b: 1});
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .update() with upsert: true
+ explainMissingDb.dropDatabase();
+ explainColl = explainMissingDb.collection.explain("executionStats");
+ explain = explainColl.update({a: 1}, {b: 1}, {upsert: true});
+ assert.commandWorked(explain);
+ assert("executionStats" in explain);
+
+ // .aggregate()
+ explainMissingDb.dropDatabase();
+ explain = explainMissingDb.collection.explain("executionStats").aggregate([{$match: {a: 1}}]);
+ assert.commandWorked(explain);
+}());
diff --git a/jstests/core/indexes_on_indexes.js b/jstests/core/indexes_on_indexes.js index deff131f7f4..df42c5161e5 100644 --- a/jstests/core/indexes_on_indexes.js +++ b/jstests/core/indexes_on_indexes.js @@ -1,25 +1,27 @@ -// ensure an index cannot be created on system.indexes -var t = db.getSiblingDB("indexes_on_indexes"); -t.dropDatabase(); -t.coll.insert({}); +// Ensure an index cannot be created on system.indexes +(function() { + var t = db.getSiblingDB("indexes_on_indexes"); + t.dropDatabase(); + t.coll.insert({}); -printjson(t.system.indexes.getIndexes()); -assert.eq(t.system.indexes.getIndexes().length, 0); + printjson(t.system.indexes.getIndexes()); + assert.eq(t.system.indexes.getIndexes().length, 0); -print("trying via ensureIndex"); -assert.commandFailed(t.system.indexes.ensureIndex({_id:1})); -printjson(t.system.indexes.getIndexes()); -assert.eq(t.system.indexes.getIndexes().length, 0); + print("trying via ensureIndex"); + assert.commandFailed(t.system.indexes.ensureIndex({_id:1})); + printjson(t.system.indexes.getIndexes()); + assert.eq(t.system.indexes.getIndexes().length, 0); -print("trying via createIndex"); -assert.throws(t.system.indexes.createIndex({_id:1})); -printjson(t.system.indexes.getIndexes()); -assert.eq(t.system.indexes.getIndexes().length, 0); + print("trying via createIndex"); + assert.throws(t.system.indexes.createIndex({_id:1})); + printjson(t.system.indexes.getIndexes()); + assert.eq(t.system.indexes.getIndexes().length, 0); -print("trying via direct insertion"); -assert.throws(t.system.indexes.insert({ v:1, - key:{_id:1}, - ns: "indexes_on_indexes.system.indexes", - name:"wontwork"})); -printjson(t.system.indexes.getIndexes()); -assert.eq(t.system.indexes.getIndexes().length, 0); + print("trying via direct insertion"); + assert.throws(t.system.indexes.insert({ v:1, + key:{_id:1}, + ns: "indexes_on_indexes.system.indexes", + name:"wontwork"})); + printjson(t.system.indexes.getIndexes()); + assert.eq(t.system.indexes.getIndexes().length, 0); +}()); diff --git a/jstests/core/list_indexes_non_existent_ns.js b/jstests/core/list_indexes_non_existent_ns.js index e82f2e145a9..0e134862c3a 100644 --- a/jstests/core/list_indexes_non_existent_ns.js +++ b/jstests/core/list_indexes_non_existent_ns.js @@ -1,17 +1,18 @@ // Test the listIndexes command on non-existent collection.
+(function() {
+ var dbTest = db.getSiblingDB("list_indexes_non_existent_db");
+ assert.commandWorked(dbTest.dropDatabase());
-var db = db.getSiblingDB("list_indexes_non_existent_db");
-assert.commandWorked(db.dropDatabase());
+ var coll;
-var coll;
+ // Non-existent database
+ coll = dbTest.getCollection("list_indexes_non_existent_db");
+ assert.commandFailed(coll.runCommand("listIndexes"));
-// Non-existent database
-coll = db.getCollection("list_indexes_non_existent_db");
-assert.commandFailed(coll.runCommand("listIndexes"));
+ // Creates the actual database that did not exist till now
+ coll.insert({});
-// Creates the db
-coll.insert({});
-
-// Non-existent collection
-coll = db.getCollection("list_indexes_non_existent_collection");
-assert.commandFailed(coll.runCommand("listIndexes"));
+ // Non-existent collection
+ coll = dbTest.getCollection("list_indexes_non_existent_collection");
+ assert.commandFailed(coll.runCommand("listIndexes"));
+}());
|