public async Task UpdateLightScene_BadRequest_SceneNull() { var hueLightProvider = Substitute.For <IHueLightProvider>(); var lightSceneRepository = Substitute.For <IAsyncRepository <LightScene> >(); LightScene lightScene = null; var controller = new LightingController(hueLightProvider, lightSceneRepository); var result = await controller.UpdateLightScene(5, lightScene); Assert.IsType <BadRequestResult>(result.Result); }
public async Task UpdateLightScene_BadRequest_InvalidId() { var hueLightProvider = Substitute.For <IHueLightProvider>(); var lightSceneRepository = Substitute.For <IAsyncRepository <LightScene> >(); LightScene lightScene = new LightScene() { Id = 5, Name = "Test", Data = "abc" }; var controller = new LightingController(hueLightProvider, lightSceneRepository); var result = await controller.UpdateLightScene(7, lightScene); Assert.IsType <BadRequestResult>(result.Result); }
public async Task UpdateLightScene_Ok() { var hueLightProvider = Substitute.For <IHueLightProvider>(); var lightSceneRepository = Substitute.For <IAsyncRepository <LightScene> >(); var lightScene = new LightScene() { Id = 5, Name = "Test", Data = "abc" }; var controller = new LightingController(hueLightProvider, lightSceneRepository); var result = await controller.UpdateLightScene(5, lightScene); await lightSceneRepository.Received(1).UpdateAsync(Arg.Is <LightScene>(x => x.Id.Equals(5) && x.Name.Equals("Test") && x.Data.Equals("abc"))); var okResult = Assert.IsType <OkObjectResult>(result.Result); var scene = Assert.IsType <LightScene>(okResult.Value); Assert.Equal(5, scene.Id); Assert.Equal("Test", scene.Name); Assert.Equal("abc", scene.Data); }