コード例 #1
0
        public async Task GetHomeyMapping_WhenCalled_ReturnsOk()
        {
            var mockedRepo = new Mock <IHomeRepository>();

            var controller = new SensorsController(mockedRepo.Object, listenerClient, this.loggerMock);

            var newSensor = new Sensor()
            {
                Name = "test_sensor_1",
                Id   = Guid.Parse("00000000-0000-0000-0000-000000000003"),
                Type = "test_type"
            };

            mockedRepo.Setup(repo => repo.GetSensor(newSensor.Id)).ReturnsAsync(newSensor);

            var newMapping = new HomeyMapping()
            {
                HumTopic    = "humTopic",
                TempTopic   = "tempTopic",
                MotionTopic = "motionTopic"
            };

            mockedRepo.Setup(repo => repo.GetHomeyMapping(newSensor)).ReturnsAsync(newMapping);

            var result = await controller.GetHomeyMapping(newSensor.Id.ToString());

            var contentResult = (result as OkObjectResult).Value;

            Assert.Equal(newMapping, contentResult);
        }
コード例 #2
0
        public async Task GetHomeyMapping_WhenCalled_WrongSensor_ReturnsNotFound()
        {
            var mockedRepo = new Mock <IHomeRepository>();

            var controller = new SensorsController(mockedRepo.Object, listenerClient, this.loggerMock);
            var sensorId   = Guid.Parse("00000000-0000-0000-0000-000000000003");

            mockedRepo.Setup(repo => repo.GetSensor(sensorId)).ReturnsAsync((Sensor)null);

            var result = await controller.GetHomeyMapping(sensorId.ToString());

            var contentResult = result as NotFoundResult;

            Assert.NotNull(contentResult);
            mockedRepo.Verify(repo => repo.GetSensor(sensorId));
            mockedRepo.VerifyNoOtherCalls();
        }