public void CreatePost_throwsException_IdIsInvalid() { var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Throws(new ArgumentException("MonsterNotValidException")); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); controller.ModelState.AddModelError("Kind", "Required"); var newPost = new FormCollection(new Dictionary <string, StringValues> { { "Id", new StringValues("-242") }, { "Title", new StringValues("Kakarott") }, { "Name", new StringValues("Rir") }, { "Author", new StringValues("Enerv") }, { "Kind", new StringValues(Common.Enumerations.Type.Oozes.ToString()) }, { "Size", new StringValues(Size.Small.ToString()) } }); var result = controller.Create(newPost) as RedirectToActionResult; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(RedirectToActionResult)); Assert.AreEqual("Create", result.ActionName); }
public void EditPost_Correct_FormularCorrect() { int id = 183; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(new MonsterTO { Id = id }); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); var newPost = new FormCollection(new Dictionary <string, StringValues> { { "Id", new StringValues(id.ToString()) }, { "Title", new StringValues("Macjhinchsoe") }, { "Name", new StringValues("Carotte") }, { "Author", new StringValues("Régé") }, { "Kind", new StringValues(Common.Enumerations.Type.Aberrations.ToString()) }, { "Size", new StringValues(Size.Gargantuan.ToString()) } }); var result = controller.Edit(id, newPost) as RedirectToActionResult; Assert.IsNotNull(result); Assert.IsInstanceOfType(result, typeof(RedirectToActionResult)); Assert.AreEqual("Index", result.ActionName); }
public void Detail_ThrowException_InvalidId() { var mocqRepo = new Mock <IRepository <MonsterTO> >(); var author = new AuthorUseCase(mocqRepo.Object); Assert.ThrowsException <ArgumentOutOfRangeException>(() => author.GetMonster(-1)); }
public void CreateOrUpdateMonster_ThrowExcepton_WhenAuthorNotInDatabase() { var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Throws(new AuthorNotExistingException()); var author = new AuthorUseCase(mocqRepo.Object); var monstre = testHelper.testMonster(546); Assert.ThrowsException <AuthorNotExistingException>(() => author.CreateOrUpdateMonster(monstre)); }
public void CreateOrUpdateMonster_ThrowExcepton_WhenMonsterTONotValid() { var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Throws(new MonsterNotValidException()); var author = new AuthorUseCase(mocqRepo.Object); var monstre = new MonsterTO(); Assert.ThrowsException <MonsterNotValidException>(() => author.CreateOrUpdateMonster(monstre)); }
public void CreateOrUpdateMonster_ThrowExcepton_IdInferiorThan0() { //Arrange var mocqRepo = new Mock <IRepository <MonsterTO> >(); var author = new AuthorUseCase(mocqRepo.Object); var monstre = testHelper.testMonster(-5); Assert.ThrowsException <ArgumentOutOfRangeException>(() => author.CreateOrUpdateMonster(monstre)); }
public void GetMonster_ThrowException_InexistentMonster() { //Arrange var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Throws(new MonsterNotExistingException()); var author = new AuthorUseCase(mocqRepo.Object); //Assert Assert.ThrowsException <MonsterNotExistingException>(() => author.GetMonster(546)); }
public void Clone_Correct() { int id = 20; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(testHelper.testMonster(id + 1)); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); var actionResult = controller.Clone(id) as RedirectToActionResult; Assert.AreNotEqual(typeof(MonsterTO), actionResult.GetType()); }
public void CloneMonster_Correct() { int id = 144; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(testHelper.testMonster(id + 1)); var author = new AuthorUseCase(mocqRepo.Object); //Act var result = author.CloneMonster(id); //Assert Assert.AreNotEqual(id, result.Id); }
public void CreateOrUpdateMonster_Create_WhenIdEquals0() { //Arrange var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(testHelper.testMonster(59)); var author = new AuthorUseCase(mocqRepo.Object); var monstre = testHelper.testMonster(0); //Act var result = author.CreateOrUpdateMonster(monstre); //Assert Assert.IsNotNull(result); mocqRepo.Verify(m => m.Upsert(monstre), Times.Once()); }
public void DeleteMonster_Correct() { int id = 161; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(testHelper.testMonster(id)); var author = new AuthorUseCase(mocqRepo.Object); var monstre = testHelper.testMonster(id); //Act var result = author.CreateOrUpdateMonster(monstre); //Assert Assert.AreEqual(id, monstre.Id); mocqRepo.Verify((m => m.Upsert(monstre)), Times.Once()); }
public void CreateOrUpdateMonster_Update_WhenIdIsStrictlySuperior0AndInDatabase() { var id = 543; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(new MonsterTO { Id = id }); var author = new AuthorUseCase(mocqRepo.Object); var monstre = testHelper.testMonster(id); //Act var result = author.CreateOrUpdateMonster(monstre); //Assert Assert.AreEqual(id, result.Id); mocqRepo.Verify((m => m.Upsert(monstre)), Times.Once()); }
public void GetMonster_ReturnMonster_WhenValid() { //Arrange var id = 42; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); var author = new AuthorUseCase(mocqRepo.Object); //Act var result = author.GetMonster(id); //Assert Assert.IsNotNull(result); Assert.AreEqual(id, result.Id); mocqRepo.Verify(m => m.GetById(id), Times.Once()); }
public void Edit_Correct() { var id = 108; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(new MonsterTO { Id = id }); var monstre = testHelper.testMonster(id); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); var actionResult = controller.Edit(id) as ViewResult; var data = actionResult.Model as MonsterTO; Assert.AreEqual(id, data.Id); }
public void Detail_Correct() { //Arrange var id = 5; var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetById(It.IsAny <int>())).Returns(testHelper.testMonster(id)); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); //Act var actionResult = controller.Details(id) as ViewResult; var data = actionResult.Model as MonsterTO; //Assert Assert.AreEqual(typeof(MonsterTO), actionResult.Model.GetType()); Assert.AreEqual(id, data.Id); }
public void Index_Correct() { //Arrange var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.GetAll()).Returns(new List <MonsterTO> { testHelper.testMonster(1), testHelper.testMonster(2) }); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); // Act var actionResult = controller.Index() as ViewResult; var data = actionResult.Model as List <MonsterTO>; //Assert Assert.AreEqual(2, data.Count()); Assert.AreEqual(typeof(List <MonsterTO>), data.GetType()); }
public void Create_Correct() { //Arrange var mocqRepo = new Mock <IRepository <MonsterTO> >(); mocqRepo.Setup(x => x.Upsert(It.IsAny <MonsterTO>())).Returns(testHelper.testMonster(36)); var author = new AuthorUseCase(mocqRepo.Object); var controller = new ManualController(author); var monstre = testHelper.testMonster(0); //Act var result = controller.Create(); //Assert Assert.IsNotNull(result); //Fait TOUT SEUL COMME UN GRAND }
public ManualController(AuthorUseCase author) { this.author = author ?? throw new ArgumentNullException(nameof(author)); }