private List <T> Assert <T>(IMongoQueryable <T> queryable, int resultCount, params string[] expectedStages) { var stages = ((AggregateQueryableExecutionModel <T>)queryable.BuildExecutionModel()).Stages; CollectionAssert.AreEqual(expectedStages.Select(x => BsonDocument.Parse(x)).ToList(), stages); // async var results = queryable.ToListAsync().GetAwaiter().GetResult(); results.Count.Should().Be(resultCount); // sync results = queryable.ToList(); results.Count.Should().Be(resultCount); return(results); }