The actual change is in src/mongo/shell/collection.js with the remaining changes
to adjust tests to the new api.
The "ideal" arguments are now an array of pipeline ops and an optional object
with extra top-level options for the command (such as {explain: true}. For
backwards compatibility, we still support the varargs style where each argument
is a pipeline stage, but there is no way to specify extra parameters in this
mode.
10 lines
261 B
JavaScript
10 lines
261 B
JavaScript
// make sure $concat doesn't optimize constants to the end
|
|
c = db.c;
|
|
c.drop();
|
|
|
|
c.save( { x:'3' } );
|
|
|
|
project = { $project:{ a:{ $concat:[ '1', { $concat:[ 'foo', '$x', 'bar' ] }, '2' ] } } };
|
|
|
|
assert.eq( '1foo3bar2', c.aggregate( project ).toArray()[ 0 ].a );
|