public RecommendationControllerTests() { var productService = new FakeProductService(); var categoryRepository = new FakeCategoryRepository(); recommendationControler = new RecommendationControler(productService, categoryRepository); }
public async Task GetPurchaseTest_Valid() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var purchaseId = 1; // Act var result = await controller.Details(purchaseId); // Assert Assert.IsNotNull(result); var objResult = result.Result as OkObjectResult; Assert.IsNotNull(objResult); var retResult = objResult.Value as PurchaseDetailsDto; Assert.IsNotNull(retResult); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].ProductId, retResult.Id); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].ProductId, retResult.ProductId); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].Qty, retResult.Qty); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].AddressId, retResult.AddressId); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].AccountId, retResult.AccountId); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].OrderStatus, retResult.OrderStatus); Assert.AreEqual(TestData.Purchases()[purchaseId - 1].TimeStamp, retResult.TimeStamp); } }
public void GetSavedDraftOrdersRetrievesOrdersWithDraftStatusAndForCurrentUser() { OrdersManagementDataSet ds = new OrdersManagementDataSet(); OrdersManagementDataSet.OrdersRow ordersRow = ds.Orders.NewOrdersRow(); ordersRow.Approver = "WhoCares"; ordersRow.Creator = "CurrentUser"; ordersRow.OrderName = "Test Order"; ordersRow.OrderStatus = (int)OrderStatusEnum.Draft; ds.Orders.AddOrdersRow(ordersRow); OrdersManagementDataSet.OrderDetailsRow detailRow = ds.OrderDetails.NewOrderDetailsRow(); detailRow.OrdersRow = ordersRow; detailRow.ProductId = 11; detailRow.Quantity = 3; ds.OrderDetails.AddOrderDetailsRow(detailRow); ds.AcceptChanges(); FakeProductService productService = new FakeProductService(); productService.Products.Add(new Product(11, null, null, 2.99m, null)); OrdersService ordersService = new OrdersService(ds, productService); IList <Order> orders = ordersService.GetSavedDraftOrders("CurrentUser"); Assert.IsNotNull(orders); Assert.AreEqual(1, orders.Count); Order order = orders[0]; Assert.AreEqual("Test Order", order.OrderName); Assert.IsNotNull(order); Assert.AreEqual(1, order.Details.Count); Assert.AreEqual((short)3, order.Details[0].Quantity); Assert.AreEqual(2.99m, order.Details[0].UnitPrice); }
public async Task GetResellPriceTest_InvalidTest() { Guid invalidProductID = Guid.NewGuid(); var expectedResult = FakeProductService.GetResellPriceOfProducts(invalidProductID); var actualResult = await _product.GetResellPriceOfProducts(invalidProductID); Assert.AreEqual(expectedResult, actualResult); }
public static FakeProductService GetPopulatedProductService() { FakeProductService productService = new FakeProductService(); productService.Products.Add(new Product(1, null, null, 5.95m, null)); productService.Products.Add(new Product(2, null, null, 1.25m, null)); return(productService); }
//Test for get product invalid test returns null public async Task GetProductByProductID_InvalidTest() { var invalidProductID = Guid.NewGuid(); var expectedResult = FakeProductService.GetProductByProductID(invalidProductID); var actualResult = await _product.GetProductByProductID(invalidProductID); Assert.AreEqual(expectedResult, actualResult); }
public async Task SetStockLvlOfProduct_InvalidTest() { var invalidProductID = Guid.NewGuid(); int stockLvl = 50; var expectedResult = FakeProductService.SetStockLevelOfProduct(invalidProductID, stockLvl); var actualResult = await _product.SetStockLvlOfProducts(invalidProductID, stockLvl); Assert.AreEqual(expectedResult, actualResult); }
public async Task GetResellHistory_ValidTest() { var expectedResult = FakeProductService.GetResellHistory(productID); var actualResult = await _product.GetResellHistory(productID); Assert.IsInstanceOf <List <ResellHistory> >(actualResult); for (int i = 0; i < actualResult.Count; i++) { Assert.AreEqual(expectedResult[i].ID, actualResult[i].ID); Assert.AreEqual(expectedResult[i].ProductID, actualResult[i].ProductID); Assert.AreEqual(expectedResult[i].ResellPrice, actualResult[i].ResellPrice); Assert.AreEqual(expectedResult[i].DateTime, actualResult[i].DateTime); } }
public async Task GetStockLvlOfProduct_ValidTest() { int stockLvl = 30; var expectedResult = FakeProductService.GetStockLevelOfProduct(stockLvl); var actualResult = await _product.GetStockLvlOfProducts(stockLvl); Assert.IsInstanceOf <List <ProductDto> >(actualResult); for (int i = 0; i < actualResult.Count; i++) { Assert.AreEqual(expectedResult[i].ID, actualResult[i].ID); Assert.AreEqual(expectedResult[i].ProductID, actualResult[i].ProductID); Assert.AreEqual(expectedResult[i].ResellPrice, actualResult[i].ResellPrice); Assert.AreEqual(expectedResult[i].StockLvl, actualResult[i].StockLvl); } }
public async Task GetStockLvlOfProduct_InvalidTest() { //Invalid stock level test. It shouuld return empty. int invalidStockLvl = -10; var expectedResult = FakeProductService.GetStockLevelOfProduct(invalidStockLvl); var actualResult = await _product.GetStockLvlOfProducts(invalidStockLvl); Assert.IsInstanceOf <List <ProductDto> >(actualResult); for (int i = 0; i < actualResult.Count; i++) { Assert.AreEqual(expectedResult[i].ID, actualResult[i].ID); Assert.AreEqual(expectedResult[i].ProductID, actualResult[i].ProductID); Assert.AreEqual(expectedResult[i].ResellPrice, actualResult[i].ResellPrice); Assert.AreEqual(expectedResult[i].StockLvl, actualResult[i].StockLvl); } }
public async Task DeletePurchase_OutOfBounds() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var purchaseId = -6; // Act var result = await controller.DeleteConfirmed(purchaseId); // Assert Assert.IsInstanceOfType(result, typeof(BadRequestResult)); } }
public async Task GetPurchaseDetailsTest_OutOfBoundsID() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var purchaseId = -6; //Act var result = await controller.Details(purchaseId); // Assert Assert.IsInstanceOfType(result.Result, typeof(NotFoundResult)); } }
public async Task GetOrderHistory_OutOfBounds() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var accId = -6; // Act var result = await controller.OrderHistory(accId); // Assert Assert.IsInstanceOfType(result.Result, typeof(BadRequestResult)); } }
public async Task GetAll_Success() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { // Act var result = await controller.GetAll(); // Assert Assert.IsInstanceOfType(result.Result, typeof(OkObjectResult)); var objResult = result.Result as OkObjectResult; Assert.IsNotNull(objResult); } }
public async Task DeletePurchase_Success() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var purchaseId = 1; // Act await controller.DeleteConfirmed(purchaseId); // Assert var purchase = await controller.Details(purchaseId); Assert.IsInstanceOfType(purchase.Result, typeof(NotFoundResult)); } }
public void GetOrderWithDetailsGetsBothOrderAndDetails() { OrdersManagementDataSet ds = new OrdersManagementDataSet(); OrdersManagementDataSet.OrdersRow ordersRow = ds.Orders.NewOrdersRow(); ordersRow.CustomerId = "11"; ordersRow.Description = "MyDescription"; ordersRow.Approver = "MyEmployeeId"; ordersRow.Creator = "MyEmployeeId"; ordersRow.OrderName = "MyOrderName"; ordersRow.OrderStatus = (int)OrderStatusEnum.Draft; ordersRow.ShipAddress = "MyShipAddress"; ordersRow.ShipCity = "MyShipCity"; ordersRow.ShipPostalCode = "MyZip"; ordersRow.ShipRegion = "MyShipRegion"; ds.Orders.AddOrdersRow(ordersRow); OrdersManagementDataSet.OrderDetailsRow detailRow = ds.OrderDetails.NewOrderDetailsRow(); detailRow.OrdersRow = ordersRow; detailRow.ProductId = 11; detailRow.Quantity = 3; ds.OrderDetails.AddOrderDetailsRow(detailRow); ds.AcceptChanges(); FakeProductService productService = new FakeProductService(); productService.Products.Add(new Product(11, null, null, 2.99m, null)); OrdersService ordersService = new OrdersService(ds, productService); Order order = ordersService.GetOrderWithDetails(ordersRow.OrderId); Assert.IsNotNull(order); Assert.AreEqual(ordersRow.OrderId, order.OrderId); Assert.AreEqual("MyDescription", order.Description); Assert.IsNotNull(order.Details); Assert.AreEqual(1, order.Details.Count); Assert.AreEqual((short)3, order.Details[0].Quantity); Assert.AreEqual(2.99m, order.Details[0].UnitPrice); }
public async Task GetOrderHistoryTest_Success() { // Arrange var repo = new FakePurchaseRepo(TestData.Purchases()); var productRepo = new FakeProductService(TestData.Products()); using (var controller = new PurchasesController(repo, productRepo, null, null)) { var accId = 1; // Act var result = await controller.OrderHistory(accId); // Assert Assert.IsNotNull(result); var objResult = result.Result as OkObjectResult; Assert.IsNotNull(objResult); var retResult = objResult.Value as List<Purchase>; Assert.IsNotNull(retResult); //foreach (Purchase purchase in retResult) //{ // Assert.AreEqual(await repo.GetPurchase(purchase.Id), purchase); //} } }