summaryrefslogtreecommitdiff
path: root/jstests/core/list_databases.js
diff options
context:
space:
mode:
Diffstat (limited to 'jstests/core/list_databases.js')
-rw-r--r--jstests/core/list_databases.js12
1 files changed, 10 insertions, 2 deletions
diff --git a/jstests/core/list_databases.js b/jstests/core/list_databases.js
index ecc746ce775..a52cfec656b 100644
--- a/jstests/core/list_databases.js
+++ b/jstests/core/list_databases.js
@@ -62,6 +62,16 @@
assert.eq(1, cmdRes.databases.length, tojson(cmdRes));
verifyNameOnly(cmdRes);
+ // $expr in filter.
+ cmdRes = assert.commandWorked(db.adminCommand(
+ {listDatabases: 1, filter: {$expr: {$eq: ["$name", "jstest_list_databases_zap"]}}}));
+ assert.eq(1, cmdRes.databases.length, tojson(cmdRes));
+ assert.eq("jstest_list_databases_zap", cmdRes.databases[0].name, tojson(cmdRes));
+
+ // $expr with an unbound variable in filter.
+ assert.commandFailed(
+ db.adminCommand({listDatabases: 1, filter: {$expr: {$eq: ["$name", "$$unbound"]}}}));
+
// No extensions are allowed in filters.
assert.commandFailed(db.adminCommand({listDatabases: 1, filter: {$text: {$search: "str"}}}));
assert.commandFailed(db.adminCommand({
@@ -76,6 +86,4 @@
listDatabases: 1,
filter: {a: {$nearSphere: {$geometry: {type: "Point", coordinates: [0, 0]}}}}
}));
-
- assert.commandFailed(db.adminCommand({listDatabases: 1, filter: {$expr: {$eq: ["$a", 5]}}}));
}());