public async Task ProductOption_Delete_NotFound()
        {
            mockIProductOptionServices.Setup(m => m.DeleteByIdAsync(It.IsAny <Guid>())).Returns(Task.FromResult(false));

            var result = await target.DeleteOption(Guid.NewGuid()) as NotFoundResult;

            AssertX.IsInstanceOfType(result, typeof(NotFoundResult));
        }
        public async Task ProductOption_GetOptions_NotFound()
        {
            var retMock = (new List <ProductOptionDto>()).AsEnumerable();

            mockIProductOptionServices.Setup(m => m.GetByProductIdAsync(It.IsAny <Guid>())).Returns(Task.FromResult(retMock));
            var result = await target.GetOptions(Guid.Empty) as NotFoundResult;

            AssertX.IsInstanceOfType(result, typeof(NotFoundResult));
        }
        public async Task ProductOption_Delete_success()
        {
            mockIProductOptionServices.Setup(m => m.DeleteByIdAsync(It.IsAny <Guid>())).Returns(Task.FromResult(true));

            var result = await target.DeleteOption(Guid.NewGuid()) as StatusCodeResult;

            AssertX.IsInstanceOfType(result, typeof(StatusCodeResult));
            Assert.AreEqual(HttpStatusCode.NoContent, result.StatusCode);
        }
        public async Task ProductOption_GetOption_NotFound()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);

            mockDto.Id = Guid.NewGuid();
            mockIProductOptionServices.Setup(m => m.GetByIdAsync(mockDto.Id)).Returns(Task.FromResult(mockDto));

            var result = await target.GetOption(mockDto.ProductId, Guid.NewGuid()) as NotFoundResult;

            AssertX.IsInstanceOfType(result, typeof(NotFoundResult));
        }
Ejemplo n.º 5
0
        public async Task Product_GetById_notFound()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();

            mockProductDto.Id = Guid.NewGuid();
            mockIProductServices.Setup(m => m.GetByIdAsync(mockProductDto.Id)).Returns(Task.FromResult(mockProductDto));

            var result = await target.GetProduct(Guid.NewGuid()) as IHttpActionResult;

            AssertX.IsInstanceOfType(result, typeof(NotFoundResult));
        }
        public async Task ProductOption_CreateOption_InvalidModel()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);
            var mockApi = AutoMapper.Mapper.Map <ProductOptionApiModel>(mockDto);

            mockIProductOptionServices.Setup(m => m.CreateAsync(It.IsAny <ProductOptionDto>())).Returns(Task.FromResult(mockDto));
            target.ModelState.AddModelError("Name", "No Value");
            var result = await target.CreateOption(mockDto.ProductId, mockApi) as InvalidModelStateResult;

            AssertX.IsInstanceOfType(result, typeof(InvalidModelStateResult));
            CollectionAssert.Contains(result.ModelState.Keys.ToArray(), "Name");
        }
Ejemplo n.º 7
0
        public async Task Product_GetById_success()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();

            mockProductDto.Id = Guid.NewGuid();

            mockIProductServices.Setup(m => m.GetByIdAsync(It.IsAny <Guid>())).Returns(Task.FromResult(mockProductDto));

            var result = await target.GetProduct(mockProductDto.Id) as OkNegotiatedContentResult <ProductApiModel>;

            AssertX.AreEqual(mockProductDto.Id, result.Content.Id);
        }
Ejemplo n.º 8
0
        public async Task Product_Delete_success()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();

            mockProductDto.Id = Guid.NewGuid();
            mockIProductServices.Setup(m => m.DeleteByIdAsync(It.IsAny <Guid>())).Returns(Task.FromResult(true));

            var result = await target.Delete(mockProductDto.Id) as StatusCodeResult;

            AssertX.IsInstanceOfType(result, typeof(StatusCodeResult));
            Assert.AreEqual(HttpStatusCode.NoContent, result.StatusCode);
        }
        public async Task ProductOption_CreateOption_Ok()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);
            var mockApi = AutoMapper.Mapper.Map <ProductOptionApiModel>(mockDto);

            mockIProductOptionServices.Setup(m => m.CreateAsync(It.IsAny <ProductOptionDto>())).Returns(Task.FromResult(mockDto));

            var result = await target.CreateOption(mockDto.ProductId, mockApi) as CreatedAtRouteNegotiatedContentResult <ProductOptionApiModel>;

            AssertX.IsInstanceOfType(result, typeof(CreatedAtRouteNegotiatedContentResult <ProductOptionApiModel>));
            Assert.AreEqual(mockApi.ProductId, result.Content.ProductId);
            Assert.AreEqual(mockApi.Name, result.Content.Name);
            Assert.AreEqual(mockApi.Description, result.Content.Description);
        }
        public async Task ProductOption_GetOption_success()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);

            mockDto.Id = Guid.NewGuid();
            mockIProductOptionServices.Setup(m => m.GetByIdAsync(mockDto.Id)).Returns(Task.FromResult(mockDto));

            var result = await target.GetOption(mockDto.ProductId, mockDto.Id) as OkNegotiatedContentResult <ProductOptionApiModel>;

            AssertX.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <ProductOptionApiModel>));
            Assert.AreEqual(mockDto.ProductId, result.Content.ProductId);
            Assert.AreEqual(mockDto.Name, result.Content.Name);
            Assert.AreEqual(mockDto.Description, result.Content.Description);
        }
Ejemplo n.º 11
0
        public async Task Product_SearchByName_notFound()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();
            var retMock        = (new List <ProductDto>()
            {
                mockProductDto
            }).AsEnumerable();

            mockIProductServices.Setup(m => m.GetByNameAsync("Me")).Returns(Task.FromResult(retMock));

            var result = await target.SearchByName("Any") as IHttpActionResult;

            AssertX.IsInstanceOfType(result, typeof(NotFoundResult));
        }
Ejemplo n.º 12
0
        public async Task Product_searchByName_success()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();
            var retMock        = (new List <ProductDto>()
            {
                mockProductDto
            }).AsEnumerable();

            mockIProductServices.Setup(m => m.GetByNameAsync(It.IsAny <string>())).Returns(Task.FromResult(retMock));

            var result = await target.SearchByName("Any") as OkNegotiatedContentResult <IEnumerable <ProductApiModel> >;

            AssertX.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <IEnumerable <ProductApiModel> >));
        }
Ejemplo n.º 13
0
        public async Task Product_Update_success()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();

            mockProductDto.Id = Guid.NewGuid();
            var mockApiModel = AutoMapper.Mapper.Map <ProductApiModel>(mockProductDto);

            mockIProductServices.Setup(m => m.UpdateAsync(It.IsAny <ProductDto>())).Returns(Task.FromResult(mockProductDto));

            var result = await target.Update(mockProductDto.Id, mockApiModel) as OkNegotiatedContentResult <ProductApiModel>;

            AssertX.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <ProductApiModel>));
            Assert.AreEqual(mockProductDto.Id, result.Content.Id);
        }
Ejemplo n.º 14
0
        public async Task Product_Create_invalid_model()
        {
            var mockProductDto = FixturesDto.ProductsBuildOne();
            var mockApiModel   = AutoMapper.Mapper.Map <ProductApiModel>(mockProductDto);

            mockApiModel.Price = -100;
            mockProductDto.Id  = Guid.NewGuid();
            mockIProductServices.Setup(m => m.CreateAsync(It.IsAny <ProductDto>())).Returns(Task.FromResult(mockProductDto));

            target.ModelState.AddModelError("Price", "Price should be a positive value!");
            var result = await target.Create(mockApiModel) as InvalidModelStateResult;

            AssertX.IsInstanceOfType(result, typeof(InvalidModelStateResult));
            CollectionAssert.Contains(result.ModelState.Keys.ToArray(), "Price");
        }
        public async Task ProductOption_GetOptions_success()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);
            var retMock = (new List <ProductOptionDto>()
            {
                mockDto
            }).AsEnumerable();


            mockIProductOptionServices.Setup(m => m.GetByProductIdAsync(mockDto.ProductId)).Returns(Task.FromResult(retMock));
            var result = await target.GetOptions(mockDto.ProductId) as OkNegotiatedContentResult <IEnumerable <ProductOptionApiModel> >;

            AssertX.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <IEnumerable <ProductOptionApiModel> >));
            Assert.AreEqual(retMock.First().ProductId, result.Content.First().Id);
            Assert.AreEqual(retMock.First().Name, result.Content.First().Name);
            Assert.AreEqual(retMock.First().Description, result.Content.First().Description);
        }
        public async Task ProductOption_Update_success()
        {
            var mockDto = FixturesDto.ProductOptionBuildOne(null);

            mockDto.Id = Guid.NewGuid();
            var mockApi = AutoMapper.Mapper.Map <ProductOptionApiModel>(mockDto);

            mockApi.Name = "New Value";
            var transformedDto = AutoMapper.Mapper.Map <ProductOptionDto>(mockApi);

            mockIProductOptionServices.Setup(m => m.UpdateAsync(It.IsAny <ProductOptionDto>())).Returns(Task.FromResult(transformedDto));

            var result = await target.UpdateOption(mockApi.Id, mockApi) as OkNegotiatedContentResult <ProductOptionApiModel>;

            AssertX.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <ProductOptionApiModel>));
            Assert.AreEqual(mockDto.Id, result.Content.Id);
            Assert.AreEqual(mockDto.Id, result.Content.Id);
            Assert.AreEqual(mockApi.Name, result.Content.Name);
            Assert.AreNotEqual(mockDto.Name, result.Content.Name);
        }