[Test] // behaviour test public void Create_When_entity_is_created_Then_it_makes_calls_to_repository_and_unit_of_work() { // Arrange var planeDTOToCreate = new PlaneDTO() { Name = "Mock Plane 1", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeRepositoryFake = A.Fake <IPlaneRepository>(); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).Returns(planeRepositoryFake); var planeService = new PlaneService(unitOfWorkFake, AlwaysValidValidator); // Act var result = planeService.Create(planeDTOToCreate); // Assert. Just behaviour A.CallTo(() => planeRepositoryFake.Create(A <Plane> ._)).MustHaveHappenedOnceExactly(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).MustHaveHappenedOnceExactly(); A.CallTo(() => unitOfWorkFake.SaveChanges()).MustHaveHappenedOnceExactly(); }
[Test] // behaviour test public void Create_When_entity_is_invalid_Then_it_makes_no_calls_to_repository_and_unit_of_work() { // Arrange var planeDTOToCreate = new PlaneDTO() { Name = "Mock Plane 2", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 2, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeRepositoryFake = A.Fake <IPlaneRepository>(); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).Returns(planeRepositoryFake); var planeService = new PlaneService(unitOfWorkFake, AlwaysInValidValidator); // Act + Assert var exception = Assert.Throws <BadRequestException>(() => planeService.Create(planeDTOToCreate)); // Assert. Just behaviour A.CallTo(() => planeRepositoryFake.Create(A <Plane> ._)).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.PlaneRepository).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).MustNotHaveHappened(); A.CallTo(() => unitOfWorkFake.SaveChanges()).MustNotHaveHappened(); }
public void Create_When_entity_is_invalid_Then_bad_request_exception_is_thrown() { // Arrange var planeMock = new Plane() { Id = 2, Name = "Mock Plane 2", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeDTOToCreate = new PlaneDTO() { Name = "Mock Plane 2", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeRepositoryFake = A.Fake <IPlaneRepository>(); A.CallTo(() => planeRepositoryFake.Create(A <Plane> ._)).Returns(planeMock); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).Returns(planeRepositoryFake); var planeService = new PlaneService(unitOfWorkFake, AlwaysInValidValidator); // Act + Assert var exception = Assert.Throws <BadRequestException>(() => planeService.Create(planeDTOToCreate), ""); Assert.AreEqual(exception.Message, "Is Invalid"); }
public void Create_Plane_When_model_is_not_valid_Then_throws_ValidatorExceprion() { var planeService = new PlaneService(unitOfWork, mapper, new PlaneValidator()); var plane = new PlaneDto() { Name = "Bobo", Type = 1, Created = new DateTime(2013, 08, 03), Expires = new TimeSpan(29, 0, 0, 0) }; Assert.Throws <FluentValidation.ValidationException>(() => planeService.Create(plane)); }
public async Task SubmitCreate(string name, DateTime made, int type, TimeSpan exp) { InputPlane plane = new InputPlane(); plane.Name = name; plane.Made = made; plane.Exploitation = exp; plane.Type = type; await ps.Create(plane); this.Frame.Navigate(typeof(Planes)); }
public void Create_When_PlaneModel_is_not_valid_Then_throws_ValidatorException() { var plane1 = new PlaneDto() { Name = "name", Created = DateTime.Now, Expires = new TimeSpan(2, 0, 0, 0), Type = 1 }; var plane2 = new PlaneDto() { Name = "name", Created = DateTime.Now, Expires = new TimeSpan(31, 0, 0, 0), Type = 0 }; var plane3 = new PlaneDto() { Name = "name", Expires = new TimeSpan(31, 0, 0, 0), Type = 1 }; var plane4 = new PlaneDto() { ID = -1, Name = "name", Created = DateTime.Now, Expires = new TimeSpan(31, 0, 0, 0), Type = 1 }; Assert.Throws <FluentValidation.ValidationException>(() => service.Create(plane1)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(plane2)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(plane3)); Assert.Throws <FluentValidation.ValidationException>(() => service.Create(plane4)); }
public void Create_When_entity_is_created_Then_new_plane_with_new_id_is_returned() { // Arrange var planeMock = new Plane() { Id = 1, Name = "Mock Plane 1", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeDTOToCreate = new PlaneDTO() { Name = "Mock Plane 1", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var expectedPlaneDTO = new PlaneDTO() { Id = 1, Name = "Mock Plane 1", ReleaseDate = new DateTime(1950, 10, 10), PlaneTypeId = 1, ServiceLife = new TimeSpan(10_000 * 24, 0, 0) }; var planeRepositoryFake = A.Fake <IPlaneRepository>(); A.CallTo(() => planeRepositoryFake.Create(A <Plane> ._)).Returns(planeMock); var unitOfWorkFake = A.Fake <IUnitOfWork>(); A.CallTo(() => unitOfWorkFake.Set <Plane>()).Returns(planeRepositoryFake); var planeService = new PlaneService(unitOfWorkFake, AlwaysValidValidator); // Act var result = planeService.Create(planeDTOToCreate); // Assert Assert.AreEqual(expectedPlaneDTO.Id, result.Id); Assert.AreEqual(expectedPlaneDTO.Name, result.Name); Assert.AreEqual(expectedPlaneDTO.ReleaseDate, result.ReleaseDate); Assert.AreEqual(expectedPlaneDTO.PlaneTypeId, result.PlaneTypeId); Assert.AreEqual(expectedPlaneDTO.ServiceLife, result.ServiceLife); }
public void Post([FromBody] PlaneDTO value) { planeService.Create(value); }
async void Create() { await Planeservice.Create(Plane); await LoadEntity().ConfigureAwait(false); }
async void Create() { await _planeService.Create(Plane); await LoadPlanes().ConfigureAwait(false); }