public async Task GivenValidModelState_DeleteProducts_ShouldDeleteProducts()
        {
            var produtcs = _fixture.Create <Products>();

            await _sut.DeleteProducts(produtcs.Name);

            _mockRepository.Verify(m => m.DeleteProduct(It.Is <string>(s => s == produtcs.Name)), Times.Once);
        }
        //[TestMethod]
        public async Task Delete100000ProductsFromControllerLessThan3Seconds()
        {
            int count = 100000;

            await InitializeDataAsync(count);

            var productsController = new ProductsController(_productRepository, _logger, _mapper);
            var requestModel       = new DeleteProductsRequestModel();

            requestModel.Id        = "123";
            requestModel.Timestamp = DateTime.UtcNow;
            requestModel.Products  = new List <ProductModel>();
            for (int i = 0; i < count; i++)
            {
                var data = _dataRow[i].Split(',');
                requestModel.Products.Add(new ProductModel
                {
                    Id = long.Parse(data[0])
                });
            }
            Stopwatch  sw     = Stopwatch.StartNew();
            JsonResult result = await productsController.DeleteProducts(requestModel);

            sw.Stop();
            var responseModel = ((DeleteProductsResponseModel)result.Data);

            Console.WriteLine(responseModel.Id + " == " + requestModel.Id);
            Assert.IsTrue(responseModel.Id == requestModel.Id);

            Console.WriteLine(responseModel.Message + " == Success");
            Assert.IsTrue(responseModel.Message == "Success");

            Console.WriteLine(sw.Elapsed.TotalSeconds + " < " + 3);
            Assert.IsTrue(sw.Elapsed.TotalSeconds < 3);
        }
Exemple #3
0
        public async Task D_DeleteNewProduct_ShouldReturnOK()
        {
            //Arrange
            var controller = new ProductsController();

            controller.Request       = new HttpRequestMessage();
            controller.Configuration = new System.Web.Http.HttpConfiguration();
            //Act
            var result = await controller.DeleteProducts(78);

            var result_test = result as OkNegotiatedContentResult <Products>;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(result_test.Content.ProductName, "Test Product");
        }