Esempio n. 1
0
        public void InvalidRemoveArguments()
        {
            var dbSet = new MongoDbBucketSet <EntityGroup, SubEntityClass>(new Mock <IMongoDbContext>().Object, new BucketSetOptions
            {
                BucketSize         = 2,
                EntityTimeProperty = "Date"
            });

            Assert.ThrowsException <ArgumentNullException>(() => dbSet.Remove(null));
        }
Esempio n. 2
0
        public void RemoveBucket()
        {
            var connection = TestConfiguration.GetConnection();
            var context    = new MongoDbContext(connection);
            var dbSet      = new MongoDbBucketSet <EntityGroup, SubEntityClass>(context, new BucketSetOptions
            {
                BucketSize         = 2,
                EntityTimeProperty = "Date"
            });

            dbSet.AddRange(new EntityGroup
            {
                Name = "Group1"
            }, new[] {
                new SubEntityClass
                {
                    Label = "Entry1",
                    Date  = new DateTime(2020, 1, 1)
                },
                new SubEntityClass
                {
                    Label = "Entry2",
                    Date  = new DateTime(2020, 1, 2)
                },
                new SubEntityClass
                {
                    Label = "Entry2",
                    Date  = new DateTime(2020, 1, 3)
                }
            });

            Assert.IsFalse(dbSet.Any(b => b.Group.Name == "Group1"));
            context.SaveChanges();
            Assert.IsTrue(dbSet.Any(b => b.Group.Name == "Group1" && b.ItemCount == 2));
            Assert.IsTrue(dbSet.Any(b => b.Group.Name == "Group1" && b.ItemCount == 1));

            dbSet.Remove(new EntityGroup
            {
                Name = "Group1"
            });
            context.SaveChanges();

            Assert.IsFalse(dbSet.Any(b => b.Group.Name == "Group1"));
        }