summaryrefslogtreecommitdiff
path: root/jstests/core/fts_index.js
diff options
context:
space:
mode:
authorArun Banala <arun.banala@mongodb.com>2020-11-12 17:48:52 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-11-12 18:15:38 +0000
commit7c196029e8529d8d217a4c9314d8a4e6069a91d2 (patch)
treedcac2d4dda9015804fbf538cffd4a15d9c02cd39 /jstests/core/fts_index.js
parentccd024d9fb5c0587e33a3a3321e7f9a0430d0190 (diff)
downloadmongo-7c196029e8529d8d217a4c9314d8a4e6069a91d2.tar.gz
Revert "SERVER-50442 Remove ensureIndex shell function This commit also replaces all the usages of ensureIndex() with createIndex() in JS tests and JS shell"
This reverts commit e69c967ff8b53634770438dfe9a5c7d13548351b.
Diffstat (limited to 'jstests/core/fts_index.js')
-rw-r--r--jstests/core/fts_index.js86
1 files changed, 43 insertions, 43 deletions
diff --git a/jstests/core/fts_index.js b/jstests/core/fts_index.js
index 3080534c434..a41ea5a8dab 100644
--- a/jstests/core/fts_index.js
+++ b/jstests/core/fts_index.js
@@ -27,7 +27,7 @@ coll.getDB().createCollection(coll.getName());
//
// Spec passes text-specific index validation.
-assert.commandWorked(coll.createIndex({a: "text"}, {name: indexName, default_language: "spanish"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {name: indexName, default_language: "spanish"}));
assert.eq(1,
coll.getIndexes()
.filter(function(z) {
@@ -38,7 +38,7 @@ coll.dropIndexes();
// Spec fails text-specific index validation ("spanglish" unrecognized).
assert.commandFailed(
- coll.createIndex({a: "text"}, {name: indexName, default_language: "spanglish"}));
+ coll.ensureIndex({a: "text"}, {name: indexName, default_language: "spanglish"}));
assert.eq(0,
coll.getIndexes()
.filter(function(z) {
@@ -48,7 +48,7 @@ assert.eq(0,
coll.dropIndexes();
// Spec passes general index validation.
-assert.commandWorked(coll.createIndex({"$**": "text"}, {name: indexName}));
+assert.commandWorked(coll.ensureIndex({"$**": "text"}, {name: indexName}));
assert.eq(1,
coll.getIndexes()
.filter(function(z) {
@@ -58,7 +58,7 @@ assert.eq(1,
coll.dropIndexes();
// Spec fails general index validation ("a.$**" invalid field name for key).
-assert.commandFailed(coll.createIndex({"a.$**": "text"}, {name: indexName}));
+assert.commandFailed(coll.ensureIndex({"a.$**": "text"}, {name: indexName}));
assert.eq(0,
coll.getIndexes()
.filter(function(z) {
@@ -68,7 +68,7 @@ assert.eq(0,
coll.dropIndexes();
// SERVER-19519 Spec fails if '_fts' is specified on a non-text index.
-assert.commandFailed(coll.createIndex({_fts: 1}, {name: indexName}));
+assert.commandFailed(coll.ensureIndex({_fts: 1}, {name: indexName}));
assert.eq(0,
coll.getIndexes()
.filter(function(z) {
@@ -76,7 +76,7 @@ assert.eq(0,
})
.length);
coll.dropIndexes();
-assert.commandFailed(coll.createIndex({_fts: "text"}, {name: indexName}));
+assert.commandFailed(coll.ensureIndex({_fts: "text"}, {name: indexName}));
assert.eq(0,
coll.getIndexes()
.filter(function(z) {
@@ -92,22 +92,22 @@ coll.dropIndexes();
// Can create a text index on a collection where no documents have invalid language_override.
coll.insert({a: ""});
coll.insert({a: "", language: "spanish"});
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
coll.drop();
// Can't create a text index on a collection containing document with an invalid language_override.
coll.insert({a: "", language: "spanglish"});
-assert.commandFailed(coll.createIndex({a: "text"}));
+assert.commandFailed(coll.ensureIndex({a: "text"}));
coll.drop();
// Can insert documents with valid language_override into text-indexed collection.
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
coll.insert({a: ""});
assert.commandWorked(coll.insert({a: "", language: "spanish"}));
coll.drop();
// Can't insert documents with invalid language_override into text-indexed collection.
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
assert.writeError(coll.insert({a: "", language: "spanglish"}));
coll.drop();
@@ -115,69 +115,69 @@ coll.drop();
// 3. Collections may have at most one text index.
//
-// createIndex() becomes a no-op on an equivalent index spec.
+// ensureIndex() becomes a no-op on an equivalent index spec.
assert.commandWorked(coll.getDB().createCollection(coll.getName()));
assert.eq(1, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}, {background: true}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}, {background: true}));
assert.eq(2, coll.getIndexes().length);
-assert.commandFailedWithCode(coll.createIndex({a: 1, b: 1, c: "text"}),
+assert.commandFailedWithCode(coll.ensureIndex({a: 1, b: 1, c: "text"}),
ErrorCodes.CannotCreateIndex);
assert.commandFailedWithCode(
- coll.createIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {b: 1}}),
+ coll.ensureIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {b: 1}}),
ErrorCodes.IndexOptionsConflict);
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}, {default_language: "english"}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}, {default_language: "english"}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}, {textIndexVersion: 2}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}, {textIndexVersion: 2}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}, {language_override: "language"}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}, {language_override: "language"}));
assert.eq(2, coll.getIndexes().length);
coll.drop();
// Two index specs are also considered equivalent if they differ only in 'textIndexVersion', and
-// createIndex() becomes a no-op on repeated requests that only differ in this way.
+// ensureIndex() becomes a no-op on repeated requests that only differ in this way.
assert.commandWorked(coll.getDB().createCollection(coll.getName()));
assert.eq(1, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 1}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 1}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 2}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 2}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 3}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 3}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
assert.eq(2, coll.getIndexes().length);
coll.drop();
assert.commandWorked(coll.getDB().createCollection(coll.getName()));
assert.eq(1, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 3}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 3}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 2}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 2}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}, {textIndexVersion: 1}));
+assert.commandWorked(coll.ensureIndex({a: "text"}, {textIndexVersion: 1}));
assert.eq(2, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
assert.eq(2, coll.getIndexes().length);
coll.drop();
-// createIndex() fails if a second text index would be built.
+// ensureIndex() fails if a second text index would be built.
assert.commandWorked(coll.getDB().createCollection(coll.getName()));
assert.eq(1, coll.getIndexes().length);
-assert.commandWorked(coll.createIndex({a: 1, b: "text", c: 1}));
-assert.eq(2, coll.getIndexes().length);
-assert.commandFailed(coll.createIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {d: 1}}));
-assert.commandFailed(coll.createIndex({a: 1, b: "text", c: 1}, {default_language: "none"}));
-assert.commandFailed(coll.createIndex({a: 1, b: "text", c: 1}, {language_override: "idioma"}));
-assert.commandFailed(coll.createIndex({a: 1, b: "text", c: 1}, {weights: {d: 1}}));
-assert.commandFailed(coll.createIndex({a: 1, b: "text", d: 1}));
-assert.commandFailed(coll.createIndex({a: 1, d: "text", c: 1}));
-assert.commandFailed(coll.createIndex({b: "text"}));
-assert.commandFailed(coll.createIndex({b: "text", c: 1}));
-assert.commandFailed(coll.createIndex({a: 1, b: "text"}));
+assert.commandWorked(coll.ensureIndex({a: 1, b: "text", c: 1}));
+assert.eq(2, coll.getIndexes().length);
+assert.commandFailed(coll.ensureIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {d: 1}}));
+assert.commandFailed(coll.ensureIndex({a: 1, b: "text", c: 1}, {default_language: "none"}));
+assert.commandFailed(coll.ensureIndex({a: 1, b: "text", c: 1}, {language_override: "idioma"}));
+assert.commandFailed(coll.ensureIndex({a: 1, b: "text", c: 1}, {weights: {d: 1}}));
+assert.commandFailed(coll.ensureIndex({a: 1, b: "text", d: 1}));
+assert.commandFailed(coll.ensureIndex({a: 1, d: "text", c: 1}));
+assert.commandFailed(coll.ensureIndex({b: "text"}));
+assert.commandFailed(coll.ensureIndex({b: "text", c: 1}));
+assert.commandFailed(coll.ensureIndex({a: 1, b: "text"}));
coll.dropIndexes();
@@ -185,7 +185,7 @@ coll.dropIndexes();
// 4. Text indexes properly handle large keys.
//
-assert.commandWorked(coll.createIndex({a: "text"}));
+assert.commandWorked(coll.ensureIndex({a: "text"}));
var longstring = "";
var longstring2 = "";
@@ -201,7 +201,7 @@ coll.dropIndexes();
//
// 5. Bad weights test cases.
//
-assert.commandFailed(coll.createIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {}}));
-assert.commandFailed(coll.createIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}));
+assert.commandFailed(coll.ensureIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}, {weights: {}}));
+assert.commandFailed(coll.ensureIndex({a: 1, _fts: "text", _ftsx: 1, c: 1}));
coll.drop();