public void TestFields() { var pairs = new[] { new { Fields = "", Mongo = "{ }" }, new { Fields = "name(1),age(1)", Mongo = "{ \"name\" : 1, \"age\" : 1 }" }, new { Fields = "id(0),age(1)", Mongo = "{ \"_id\" : 0, \"age\" : 1 }" }, new { Fields = "textScore(1)", Mongo = "{ \"textScore\" : { \"$meta\" : \"textScore\" } }" }, }; for (int i = 0; i < pairs.Length; i++) { var pair = pairs[i]; var definition = new FieldSpecToProjectionDefinition().Compile <BsonDocument>(pair.Fields); var doc = definition as BsonDocumentProjectionDefinition <BsonDocument, BsonDocument>; Assert.NotNull(doc); string mongo = (doc == null ? "" : doc.Document.ToString()); Assert.AreEqual(pair.Mongo, mongo, String.Format("Iteration {0}", i)); } }
public void TestFields() { var pairs = new[] { new { Fields = "", Mongo = "{ }" }, new { Fields = "name(1),age(1)", Mongo = "{ \"name\" : 1, \"age\" : 1 }" }, new { Fields = "id(0),age(1)", Mongo = "{ \"_id\" : 0, \"age\" : 1 }" }, new { Fields = "textScore(1)", Mongo = "{ \"textScore\" : { \"$meta\" : \"textScore\" } }" }, }; for (int i = 0; i < pairs.Length; i++) { var pair = pairs[i]; var definition = new FieldSpecToProjectionDefinition().Compile<BsonDocument>(pair.Fields); var doc = definition as BsonDocumentProjectionDefinition<BsonDocument, BsonDocument>; Assert.NotNull(doc); string mongo = (doc == null ? "" : doc.Document.ToString()); Assert.AreEqual(pair.Mongo, mongo, String.Format("Iteration {0}", i)); } }