public async Task GetAllLights_ListValid()
        {
            var          hueLightProvider = Substitute.For <IHueLightProvider>();
            List <Light> list             = new List <Light>()
            {
                new Light()
                {
                    Id    = 5,
                    Name  = "Light No. 5",
                    Type  = LightType.HueDimmableLight,
                    State = new LightState()
                    {
                        On               = true,
                        Brightness       = 100,
                        ColorTemperature = 10,
                        Saturation       = 50,
                        Reachable        = true,
                    }
                }
            };

            hueLightProvider.GetAllLightsAsync().Returns(Task.FromResult(list));
            var controller = new LightingController(hueLightProvider, null);

            var result = await controller.GetAllLights();

            var okResult = Assert.IsType <OkObjectResult>(result.Result);
            var lights   = Assert.IsType <List <Light> >(okResult.Value);

            Assert.Equal(list, lights);
        }
        public async Task GetAllLights_ListEmpty()
        {
            var          hueLightProvider = Substitute.For <IHueLightProvider>();
            List <Light> list             = new List <Light>();

            hueLightProvider.GetAllLightsAsync().Returns(Task.FromResult(list));
            var controller = new LightingController(hueLightProvider, null);

            var result = await controller.GetAllLights();

            Assert.IsType <NoContentResult>(result.Result);
        }