Пример #1
0
        [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();
        }
Пример #2
0
        [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();
        }
Пример #3
0
        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");
        }
Пример #4
0
        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));
        }
Пример #6
0
        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));
        }
Пример #7
0
        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);
        }
Пример #8
0
 public void Post([FromBody] PlaneDTO value)
 {
     planeService.Create(value);
 }
Пример #9
0
        async void Create()
        {
            await Planeservice.Create(Plane);

            await LoadEntity().ConfigureAwait(false);
        }
Пример #10
0
        async void Create()
        {
            await _planeService.Create(Plane);

            await LoadPlanes().ConfigureAwait(false);
        }