public void MongoDbBucketSet()
        {
            var connection = BenchmarkDb.GetConnection();
            var date       = new DateTime(2000, 1, 1);

            using (var context = new CustomDbContext(connection))
            {
                //Add
                for (var i = 0; i < NumberOfGroups; i++)
                {
                    for (var j = 0; j < EntitiesPerGroup; j++)
                    {
                        var v = i * EntitiesPerGroup + j;
                        context.TestBucketModels.Add(new TestBucketGroup
                        {
                            Name = "TestModel"
                        },
                                                     new TestBucketItem
                        {
                            Date           = date.AddDays(v),
                            OtherReference = v,
                            NestedModel    = new NestedTestModel
                            {
                                NestedName      = $"TestModel {v}",
                                NestedReference = v
                            }
                        });
                    }
                    context.SaveChanges();
                }

                //Read
                for (var i = 0; i < EntitiesPerGroup; i++)
                {
                    context.TestBucketModels.WithGroup(new TestBucketGroup
                    {
                        Name = "TestModel"
                    }).Sum(t => t.OtherReference);
                }

                //Remove
                context.TestBucketModels.Remove(new TestBucketGroup
                {
                    Name = "TestModel"
                });
                context.SaveChanges();
            }
        }
 public void Cleanup()
 {
     BenchmarkDb.DropDatabase();
 }
 public void Setup()
 {
     BenchmarkDb.DropDatabase();
 }