public void CorrectlyReturnDeleted_Actor() { var options = TestUtils.GetOptions(nameof(CorrectlyReturnDeleted_Actor)); using (var arrangeContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var sut = new ActorServices(arrangeContext, mockBusinessValidator.Object); var addedActor = sut.AddActorAsync( TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); arrangeContext.SaveChanges(); } using (var assertContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var sut = new ActorServices(assertContext, mockBusinessValidator.Object); var deletedActor = sut.DeleteActorAsync( TestSamples.exampleActor.Id, TestSamples.allowedRoles).Result; Assert.IsInstanceOfType(deletedActor, typeof(Actor)); Assert.AreEqual(deletedActor.Id, TestSamples.exampleActor.Id); Assert.AreEqual(deletedActor.FirstName, TestSamples.exampleActor.FirstName); Assert.AreEqual(deletedActor.LastName, TestSamples.exampleActor.LastName); Assert.AreEqual(deletedActor.Bio, TestSamples.exampleActor.Bio); Assert.AreEqual(deletedActor.ProfileImageName, TestSamples.exampleActor.ProfileImageName); } }
public void DeleteActorCorrectly() { var options = TestUtils.GetOptions(nameof(DeleteActorCorrectly)); using (var arrangeContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var sut = new ActorServices(arrangeContext, mockBusinessValidator.Object); var addedActor = sut.AddActorAsync( TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); var deletedActor = sut.DeleteActorAsync( TestSamples.exampleActor.Id, TestSamples.allowedRoles); arrangeContext.SaveChanges(); } using (var assertContext = new MovInfoContext(options)) { Assert.AreEqual(assertContext.Actors.Count(), 0); } }
public void IsActorAlreadyPresent_ShouldThrowArgumentExceptionAndCorrectMessage_WhenActorAlreadyInDb() { var options = TestUtils.GetOptions(nameof(IsActorAlreadyPresent_ShouldThrowArgumentExceptionAndCorrectMessage_WhenActorAlreadyInDb)); using (var arrangeContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var service = new ActorServices(arrangeContext, mockBusinessValidator.Object); var addedActor = service.AddActorAsync( TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); arrangeContext.SaveChanges(); } using (var assertContext = new MovInfoContext(options)) { var mockWrapUserManager = new Mock <IWrapUserManager>(); var mockHttpContext = new Mock <IHttpContextAccessor>(); var sut = new BusinessLogicValidator(mockHttpContext.Object, mockWrapUserManager.Object); var ex = Assert.ThrowsException <ArgumentException>(() => sut.IsActorAlreadyPresent(assertContext, TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName)); Assert.AreEqual(ex.Message, BusinessLogicValidatorMessages.ActorAlreadyPresent); } }
public void DoesAllActorsExist_ShouldThrowArgumentExceptionAndCorrectMessage_WhenNoSuchActorsInDb() { var options = TestUtils.GetOptions(nameof(DoesCategoryExist_ShouldThrowArgumentExceptionAndCorrectMessage_WhenNoSuchCategoryInDb)); using (var arrangeContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var service = new ActorServices(arrangeContext, mockBusinessValidator.Object); var addedActor = service.AddActorAsync( TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); arrangeContext.SaveChanges(); } using (var assertContext = new MovInfoContext(options)) { var mockWrapUserManager = new Mock <IWrapUserManager>(); var mockHttpContext = new Mock <IHttpContextAccessor>(); var actorsIds = new long[] { 1, 2 }; var sut = new BusinessLogicValidator(mockHttpContext.Object, mockWrapUserManager.Object); var ex = Assert.ThrowsException <ArgumentException>(() => sut.DoAllActorsExist(assertContext, actorsIds)); Assert.AreEqual(ex.Message, BusinessLogicValidatorMessages.OneOrMoreActorsMissing); } }
public void EditActor_Should_CorrectlyEdit_Actor() { var options = TestUtils.GetOptions(nameof(EditActor_Should_CorrectlyEdit_Actor)); using (var arrangeContext = new MovInfoContext(options)) { var mockBusinessValidator = new Mock <IBusinessLogicValidator>(); var sut = new ActorServices(arrangeContext, mockBusinessValidator.Object); var addedActor = sut.AddActorAsync( TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); var editedActor = sut.EditActorAsync( TestSamples.exampleActor.Id, TestSamples.exampleActor.FirstName, TestSamples.exampleActor.LastName, TestSamples.exampleActor.Bio, TestSamples.exampleActor.ProfileImageName, TestSamples.allowedRoles); arrangeContext.SaveChanges(); } using (var assertContext = new MovInfoContext(options)) { Assert.AreEqual(assertContext.Actors.First().Id, TestSamples.exampleActor.Id); Assert.AreEqual(assertContext.Actors.First().FirstName, TestSamples.exampleActor2.FirstName); Assert.AreEqual(assertContext.Actors.First().LastName, TestSamples.exampleActor2.LastName); Assert.AreEqual(assertContext.Actors.First().Bio, TestSamples.exampleActor2.Bio); Assert.AreEqual(assertContext.Actors.First().ProfileImageName, TestSamples.exampleActor2.ProfileImageName); } }