public (object, Type) GetInstanceAndOutputType()
        {
            var type = typeof(IMongoQueryable <>)
                       .MakeGenericType(_mongoQueryable.GetExecutionModel().OutputType);

            return(_mongoQueryable, type);
        }
        private List <T> Assert <T>(IMongoQueryable <T> queryable, int resultCount, params string[] expectedStages)
        {
            var executionModel = (AggregateQueryableExecutionModel <T>)queryable.GetExecutionModel();

            CollectionAssert.AreEqual(expectedStages.Select(x => BsonDocument.Parse(x)).ToList(), executionModel.Stages);

            // async
            var results = queryable.ToListAsync().GetAwaiter().GetResult();

            results.Count.Should().Be(resultCount);

            // sync
            results = queryable.ToList();
            results.Count.Should().Be(resultCount);

            return(results);
        }
Esempio n. 3
0
 public QueryableExecutionModel GetExecutionModel()
 {
     return(internalQueryable.GetExecutionModel());
 }
Esempio n. 4
0
        private IEnumerable <BsonDocument> Execute <T>(IMongoQueryable <T> queryable)
        {
            var result = (AggregateQueryableExecutionModel <T>)queryable.GetExecutionModel();

            return(result.Stages);
        }
Esempio n. 5
0
 public QueryableExecutionModel GetExecutionModel()
 {
     return(queryCollection.GetExecutionModel());
 }