Beispiel #1
0
        public async Task ProductService_NonExistingId()
        {
            // arrange
            var service = InfrastructureBuilder.GetProductService();
            var id      = 999;

            // act
            var product = await service.Get(id);

            // assert
            Assert.Null(product);
        }
        public async Task ProductsControllerV1_GetAll_ReturnsOk()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);

            // act
            var result = await controller.GetAll();

            // assert
            Assert.NotNull(result);
            Assert.IsType <OkObjectResult>(result);
        }
Beispiel #3
0
        public async Task ProductService_ExistingId()
        {
            // arrange
            var service = InfrastructureBuilder.GetProductService();
            var id      = 1;

            // act
            var product = await service.Get(id);

            // assert
            Assert.NotNull(product);
            Assert.Equal(id, product.Id);
        }
        public async Task ProductsControllerV1_Get_ReturnsNotFound()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);
            var id         = 999;

            // act
            var result = await controller.Get(id);

            // assert
            Assert.NotNull(result);
            Assert.IsType <NotFoundResult>(result);
        }
        public async Task ProductsControllerV1_PartialUpdate_ReturnsNotFound_NonExistingId()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);

            MockProductPatchDTOValidator(controller);

            // act
            var result = await controller.PartialUpdate(999, null);

            // assert
            Assert.NotNull(result);
            Assert.IsType <BadRequestObjectResult>(result);
        }
        public async Task ProductsControllerV2_GetAll_ReturnsBadRequest_PageSize()
        {
            // arrange
            var service          = InfrastructureBuilder.GetProductService();
            var controller       = new ProductsController(service);
            var productParmeters = new ProductParmeters {
                PageNumber = 1, PageSize = -1
            };

            // act
            var result = await controller.GetAll(productParmeters);

            // assert
            Assert.NotNull(result);
            Assert.IsType <BadRequestResult>(result);
        }
Beispiel #7
0
        public async Task ProductService_GetAllPaged_PageSizeOk()
        {
            // arrange
            var service = InfrastructureBuilder.GetProductService();

            var pageSize          = 10;
            var pageNumber        = 2;
            var productParameters = new ProductParmeters {
                PageNumber = pageNumber, PageSize = pageSize
            };

            // act
            var result = await service.GetPaged(productParameters);

            // assert
            Assert.NotNull(result);
            Assert.Equal(pageSize, result.Count());
        }
        public async Task ProductsControllerV1_PartialUpdate_ReturnsBadRequest_NegativeId()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);

            var patchDoc = new JsonPatchDocument <ProductPatchDTO>();

            patchDoc.Replace <string>(s => s.Description, "new value");
            MockProductPatchDTOValidator(controller);

            // act
            var result = await controller.PartialUpdate(-1, patchDoc);

            // assert
            Assert.NotNull(result);
            Assert.IsType <BadRequestResult>(result);
        }
Beispiel #9
0
        public async Task ProductService_PartialUpdate_ChangesValue()
        {
            // arrange
            var    context = InfrastructureBuilder.GetContext();
            var    service = InfrastructureBuilder.GetProductService(context);
            int    id      = 1;
            string value   = "changed value";
            var    patch   = new ProductPatchDTO {
                Description = value
            };

            // act
            var result = await service.Update(id, patch);

            // assert
            Assert.True(result);
            var dbValue = await context.Products.AsNoTracking().Where(w => w.Id == id).Select(p => p.Description).FirstOrDefaultAsync();

            Assert.Equal(value, dbValue);
        }
        public async Task ProductsControllerV2_GetAll_ReturnsOk()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);

            MockResponse(controller);

            var pageSize         = 10;
            var pageNumber       = 2;
            var productParmeters = new ProductParmeters {
                PageNumber = pageNumber, PageSize = pageSize
            };

            // act
            var result = await controller.GetAll(productParmeters);

            // assert
            Assert.NotNull(result);
            Assert.IsType <OkObjectResult>(result);
        }