

[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 0 }
{ "_id" : 1, "a" : null }
{ "_id" : 2, "a" : 1 }
{ "_id" : 3, "b" : null }
{ "_id" : 4, "b" : 2 }
{ "_id" : 5, "a" : { "b" : 3 } }
{ "_id" : 6, "a" : [ { "b" : 4 } ] }
Collection count: 7


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 1, "a" : null }
{ "_id" : 2, "a" : 1 }
{ "_id" : 5, "a" : { "b" : 3 } }
{ "_id" : 6, "a" : [ { "b" : 4 } ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$not" : { "$exists" : false } } } } ]
[jsTest] ----

{ "_id" : 1, "a" : null }
{ "_id" : 2, "a" : 1 }
{ "_id" : 5, "a" : { "b" : 3 } }
{ "_id" : 6, "a" : [ { "b" : 4 } ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : false } } } ]
[jsTest] ----

{ "_id" : 0 }
{ "_id" : 3, "b" : null }
{ "_id" : 4, "b" : 2 }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "b" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 3, "b" : null }
{ "_id" : 4, "b" : 2 }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.b" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 5, "a" : { "b" : 3 } }
{ "_id" : 6, "a" : [ { "b" : 4 } ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.b" : { "$exists" : false } } } ]
[jsTest] ----

{ "_id" : 0 }
{ "_id" : 1, "a" : null }
{ "_id" : 2, "a" : 1 }
{ "_id" : 3, "b" : null }
{ "_id" : 4, "b" : 2 }


[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 1, "a" : [ ] }
Collection count: 1


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 1, "a" : [ ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : false } } } ]
[jsTest] ----




[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 1, "a" : false }
Collection count: 1


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 1, "a" : false }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$exists" : false } } } ]
[jsTest] ----




[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 1, "a" : [ { "b" : 2 }, { "a" : 1 } ] }
Collection count: 1


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.a" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 1, "a" : [ { "b" : 2 }, { "a" : 1 } ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.a" : { "$exists" : false } } } ]
[jsTest] ----




[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.b" : { "$exists" : true } } } ]
[jsTest] ----

{ "_id" : 1, "a" : [ { "b" : 2 }, { "a" : 1 } ] }


[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 1, "a" : [ [ { "b" : 1 } ] ] }
Collection count: 1


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.b" : { "$exists" : false } } } ]
[jsTest] ----

{ "_id" : 1, "a" : [ [ { "b" : 1 } ] ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a.b" : { "$exists" : true } } } ]
[jsTest] ----




[jsTest] ----
[jsTest] Inserting docs:
[jsTest] ----

{ "_id" : 1, "a" : [ 1 ] }
{ "_id" : 2, "a" : [ 2 ] }
Collection count: 2


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$elemMatch" : { "$exists" : true } } } } ]
[jsTest] ----

{ "_id" : 1, "a" : [ 1 ] }
{ "_id" : 2, "a" : [ 2 ] }


[jsTest] ----
[jsTest] Query: [ { "$match" : { "a" : { "$elemMatch" : { "$exists" : false } } } } ]
[jsTest] ----


