Exemplo n.º 1
0
        public void Update_GivenInvalidNewEntityShouldThrowException()
        {
            var ctx            = new Mock <RawMetricsContext>(false);
            var mockCollection = new Mock <IMongoCollection <RawMetric> >();
            int deviceId       = 1;

            ctx.Setup(c => c.RawMetrics).Returns(mockCollection.Object);

            var dao = new RawMetricsDAO(ctx.Object);

            var initialValue = dao.Create(new RawMetric()
            {
                DeviceId = deviceId, Date = DateTime.Now.Ticks, Value = "12"
            });

            var ex = Assert.Throws <Exception>(() => dao.Update(new RawMetric()
            {
                Date = DateTime.Now.Ticks, Value = "16"
            }));

            Assert.AreEqual("RawMetric entity integrity not respected. Please verify all your required fields.", ex.Message);
        }
Exemplo n.º 2
0
        public void Update_GivenValidNewEntityShouldUpdateExisting()
        {
            var ctx            = new Mock <RawMetricsContext>(false);
            var mockCollection = new Mock <IMongoCollection <RawMetric> >();
            int deviceId       = 1;

            ctx.Setup(c => c.RawMetrics).Returns(mockCollection.Object);

            var dao = new RawMetricsDAO(ctx.Object);

            var initialValue = dao.Create(new RawMetric()
            {
                DeviceId = deviceId, Date = DateTime.Now.Ticks, Value = "12"
            });

            var updatedValue = dao.Update(new RawMetric()
            {
                DeviceId = deviceId, Date = DateTime.Now.Ticks, Value = "16"
            });

            mockCollection.Verify(c => c.ReplaceOne(It.IsAny <FilterDefinition <RawMetric> >(), It.IsAny <RawMetric>(), It.IsAny <UpdateOptions>(), It.IsAny <CancellationToken>()), Times.Once());
            Assert.AreNotEqual(initialValue.Value, updatedValue.Value);
        }