예제 #1
0
        public void TestGetMeasurement_ServiceReturnsMeasurement_ShouldCallFactoryCreateMeasurementViewModel(int id)
        {
            // Arrange
            var date = new DateTime(1, 2, 3);

            var measurement = new Measurement {
                Date = date
            };

            var mockedFactory          = new Mock <IViewModelFactory>();
            var mockedDateTimeProvider = new Mock <IDateTimeProvider>();

            var mockedMeasurementService = new Mock <IMeasurementService>();

            mockedMeasurementService.Setup(s => s.GetById(It.IsAny <int>())).Returns(measurement);

            var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>();

            var controller = new MeasurementController(mockedAuthenticationProvider.Object,
                                                       mockedMeasurementService.Object, mockedFactory.Object);

            // Act
            controller.GetMeasurement(id);

            // Assert
            mockedFactory.Verify(f => f.CreateMeasurementViewModel(measurement, date), Times.Once);
        }
예제 #2
0
        public void TestGetMeasurement_ShouldCallSeasurementServiceGetById(int id)
        {
            // Arrange
            var mockedFactory                = new Mock <IViewModelFactory>();
            var mockedDateTimeProvider       = new Mock <IDateTimeProvider>();
            var mockedMeasurementService     = new Mock <IMeasurementService>();
            var mockedAuthenticationProvider = new Mock <IAuthenticationProvider>();

            var controller = new MeasurementController(mockedAuthenticationProvider.Object,
                                                       mockedMeasurementService.Object, mockedFactory.Object);

            // Act
            controller.GetMeasurement(id);

            // Assert
            mockedMeasurementService.Verify(s => s.GetById(id), Times.Once);
        }