Exemple #1
0
 public void UpdateManyNull()
 {
     Assert.Throws <ArgumentNullException>("update",
                                           () => ZaabeeMongoClient.Update <TestModel>(null, p => p.DateTime == DateTime.Now));
     Assert.Throws <ArgumentNullException>("where",
                                           () => ZaabeeMongoClient.Update(() => new TestModel {
         DateTime = DateTime.Now
     }, null));
 }
Exemple #2
0
        public void UpdateSuccess()
        {
            var model = TestModelFactory.GetModel();

            ZaabeeMongoClient.Add(model);
            model.Int         = 199;
            model.String      = Guid.NewGuid().ToString();
            model.DateTimeUtc = DateTime.UtcNow;
            ZaabeeMongoClient.Update(model);
            var result = ZaabeeMongoClient.GetQueryable <TestModel>().FirstOrDefault(p => p.Id == model.Id);

            Assert.Equal(model.ToJson(), result.ToJson());
        }
Exemple #3
0
        public void UpdateManySuccess()
        {
            var models = TestModelFactory.GetModels(5);

            ZaabeeMongoClient.AddRange(models);
            var strings = models.Select(p => p.String);
            var ids     = models.Select(p => p.Id);
            var now     = DateTime.Now;
            var utcNow  = DateTime.UtcNow;
            var name    = Guid.NewGuid().ToString();
            var kids    = new List <TestModel>
            {
                new TestModel {
                    Id = Guid.NewGuid(), DateTime = DateTime.Now, DateTimeUtc = DateTime.UtcNow
                }
            };
            var modifyQuantity = ZaabeeMongoClient.Update(
                () => new TestModel
            {
                DateTime    = now,
                DateTimeUtc = utcNow,
                String      = name,
                KidList     = kids,
                EnumInt     = EnumInt.Banana
            },
                p => strings.Contains(p.String));

            models.ForEach(model =>
            {
                model.DateTime    = now;
                model.DateTimeUtc = utcNow;
                model.String      = name;
                model.KidList     = kids;
                model.EnumInt     = EnumInt.Banana;
            });

            var results = ZaabeeMongoClient.GetQueryable <TestModel>().Where(p => ids.Contains(p.Id)).ToList();

            Assert.Equal(5L, modifyQuantity);
            Assert.Equal(models.OrderBy(p => p.Id).ToList().ToJson(), results.OrderBy(p => p.Id).ToList().ToJson());
        }
Exemple #4
0
 public void UpdateNull()
 {
     Assert.Throws <ArgumentNullException>("entity", () => ZaabeeMongoClient.Update((TestModel)null));
 }