diff options
author | Ian Boros <ian.boros@10gen.com> | 2018-04-25 12:19:01 -0400 |
---|---|---|
committer | Ian Boros <ian.boros@10gen.com> | 2018-04-26 17:04:59 -0400 |
commit | d881559e5c847bb422687a72ce10c263f1ef68cc (patch) | |
tree | e1c29fa44089f7b8b6f7825debd0cce5a5849070 /jstests/change_streams | |
parent | a1601dd85764e1aac6128057b5681107931c64b8 (diff) | |
download | mongo-d881559e5c847bb422687a72ce10c263f1ef68cc.tar.gz |
SERVER-34662 fix $changeStream parsing to check that its argument is an object
Diffstat (limited to 'jstests/change_streams')
-rw-r--r-- | jstests/change_streams/change_stream.js | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/jstests/change_streams/change_stream.js b/jstests/change_streams/change_stream.js index d0f3755bc17..0d392b99bcc 100644 --- a/jstests/change_streams/change_stream.js +++ b/jstests/change_streams/change_stream.js @@ -16,6 +16,17 @@ assertDropAndRecreateCollection(db, "t1"); assertDropAndRecreateCollection(db, "t2"); + // Test that $changeStream only accepts an object as its argument. + function checkArgFails(arg) { + assert.commandFailedWithCode( + db.runCommand({aggregate: "t1", pipeline: [{$changeStream: arg}], cursor: {}}), 50808); + } + + checkArgFails(1); + checkArgFails("invalid"); + checkArgFails(false); + checkArgFails([1, 2, "invalid", {x: 1}]); + // Test that a change stream cannot be opened on collections in the "admin", "config", or // "local" databases. assertInvalidChangeStreamNss("admin", "testColl"); |