summaryrefslogtreecommitdiff
path: root/jstests/core/index_partial_validate.js
blob: bd854de9751deb25d7531e17326fe7334305b0e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Tests that the validate command works with partial indexes and a document that does not have
// an indexed field. For details, see SERVER-23730.
'use strict';

(function() {
    var t = db.index_partial_validate;
    t.drop();

    var res = t.ensureIndex({a: 1}, {partialFilterExpression: {a: {$lte: 1}}});
    assert.commandWorked(res);

    res = t.ensureIndex({b: 1});
    assert.commandWorked(res);

    res = t.insert({non_indexed_field: 'x'});
    assert.writeOK(res);

    res = t.validate(true);
    assert.commandWorked(res);
    assert(res.valid, 'Validate failed with response:\n' + tojson(res));
})();