Ejemplo n.º 1
0
        public async Task UpdateSetsNameAndDescription()
        {
            var mock = new Mock <IVehicleCategoryRepo>();

            var repo    = mock.Object;
            var service = new VehicleCategoryService(
                new VehicleCategoryNameUniqueSpecification(repo),
                new VehicleCategoryNotInUseSpecification(repo),
                repo
                );

            var user = new User("auth0", "*****@*****.**", "username");


            var cat = new VehicleCategory()
            {
                Name        = "old",
                Description = "oldDesc"
            };

            await service.Update(
                cat,
                new VehicleCategoryUpdate(
                    "new",
                    "newDesc"
                    )
                );

            Assert.AreEqual(cat.Name, "new");
            Assert.AreEqual(cat.Description, "newDesc");
        }
Ejemplo n.º 2
0
        public async Task DeleteThrowsErrorIfInUse()
        {
            var mock = new Mock <IVehicleCategoryRepo>();

            mock.Setup(m => m.IsInUse(It.IsAny <VehicleCategory>())).ReturnsAsync(true);

            var repo    = mock.Object;
            var service = new VehicleCategoryService(
                new VehicleCategoryNameUniqueSpecification(repo),
                new VehicleCategoryNotInUseSpecification(repo),
                repo
                );

            var cat = new VehicleCategory()
            {
                Name = "cat"
            };

            var user = new User("auth0", "*****@*****.**", "username");


            await Assert.ThrowsExceptionAsync <SpecificationException>(
                async() => {
                await service.Delete(
                    cat
                    );
            }
                );
        }
Ejemplo n.º 3
0
        public async Task CreatePreventsDuplicateNames()
        {
            var mock = new Mock <IVehicleCategoryRepo>();

            mock.Setup(m => m.FindByName("cat")).ReturnsAsync(new VehicleCategory()
            {
                Name = "cat"
            });

            var repo    = mock.Object;
            var service = new VehicleCategoryService(
                new VehicleCategoryNameUniqueSpecification(repo),
                new VehicleCategoryNotInUseSpecification(repo),
                repo
                );

            var user = new User("auth0", "*****@*****.**", "username");


            await Assert.ThrowsExceptionAsync <SpecificationException>(
                async() => await service.Create(
                    new VehicleCategoryCreate(
                        "cat"
                        ),
                    user
                    )
                );
        }
Ejemplo n.º 4
0
        public async Task CreateSetsNameAndDescription()
        {
            var repo    = Mock.Of <IVehicleCategoryRepo>();
            var service = new VehicleCategoryService(
                new VehicleCategoryNameUniqueSpecification(repo),
                new VehicleCategoryNotInUseSpecification(repo),
                repo
                );

            var user = new User("auth0", "*****@*****.**", "username");


            var cat = await service.Create(
                new VehicleCategoryCreate(
                    "name",
                    "desc"
                    ),
                user
                );

            Assert.AreEqual(cat.Name, "name");
            Assert.AreEqual(cat.Description, "desc");
        }