public void CallOrderDataProviderAddAndSaveChangesMethod() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var mockedOrderToCreate = new Order(); var mockedCreature = new Creature() { Id = 2, Price = 5m, AvailableCount = 1 }; mockedCreatureDataProvider.Setup(x => x.GetById(2)).Returns(mockedCreature); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToCreate); actualOrderService.CreateOrder("Ak47", new List <Creature>() { mockedCreature }); //Assert mockedOrderDataProvider.Verify(x => x.Add(It.IsAny <Order>()), Times.Once); mockedOrderDataProvider.Verify(x => x.SaveChanges(), Times.Once); }
public void ReturnFalseWhenAvailableCountIsLessThanZero() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var mockedOrderToCreate = new Order(); var mockedCreature = new Creature() { Id = 2, Price = 5m, AvailableCount = -1 }; mockedCreatureDataProvider.Setup(x => x.GetById(2)).Returns(mockedCreature); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToCreate); var result = actualOrderService.CreateOrder("Ak47", new List <Creature>() { mockedCreature }); //Assert Assert.AreEqual(false, result); }
public void ReturnIQueryableOrdersCollectionProvidedFromOrderDataProviderAllMethod() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var mockedOrderToCreate = new Order(); var mockedOrdersCollection = new List <Order>() { mockedOrderToCreate }; mockedOrderDataProvider.Setup(x => x.All()).Returns(mockedOrdersCollection.AsQueryable); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToCreate); var resultOrdersCollection = actualOrderService.GetAllOrders(); //Assert Assert.AreEqual(mockedOrdersCollection, resultOrdersCollection); Assert.That(resultOrdersCollection, Is.InstanceOf <IQueryable <Order> >()); }
public void SetOrderToUpdateIsProceededValueToTrue() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var orderId = 5; var mockedOrderToUpdate = new Order() { Id = orderId, isProceeded = false }; mockedOrderDataProvider.Setup(x => x.GetById(orderId)).Returns(mockedOrderToUpdate); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToUpdate); actualOrderService.ProceedOrderById(orderId); //Assert Assert.AreEqual(mockedOrderToUpdate.isProceeded, true); }
public void CallOrderDataProviderSaveChangesMethod() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var orderId = 5; var mockedOrderToUpdate = new Order() { Id = orderId }; mockedOrderDataProvider.Setup(x => x.GetById(orderId)).Returns(mockedOrderToUpdate); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToUpdate); actualOrderService.ProceedOrderById(orderId); //Assert mockedOrderDataProvider.Verify(x => x.SaveChanges(), Times.Once); }
public void CallOrderDataProviderAllMethod() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var mockedOrderToCreate = new Order(); mockedOrderDataProvider.Setup(x => x.All()).Returns(new List <Order>().AsQueryable); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToCreate); actualOrderService.GetAllOrders(); //Assert mockedOrderDataProvider.Verify(x => x.All(), Times.Once); }
public void ReturnOnlyOrderdsWithPassedUserId() { //Arrange var mockedOrderDataProvider = new Mock <IEfAquaWorldDataProvider <Order> >(); var mockedCreatureDataProvider = new Mock <IEfAquaWorldDataProvider <Creature> >(); var mockedOrderToCreate = new Order(); var userId = "Ak47"; var matchingOrder = new Order() { UserId = userId }; var notMatchingOrder = new Order() { UserId = "notMatchedId" }; var ordersList = new List <Order>() { matchingOrder, notMatchingOrder }; // ordersList has 2 orders but only one matches userId int expectedCount = 1; mockedOrderDataProvider.Setup(x => x.All()).Returns(ordersList.AsQueryable); //Act var actualOrderService = new AquaWorld.Data.Services.OrderService( mockedOrderDataProvider.Object, mockedCreatureDataProvider.Object, mockedOrderToCreate); var resultOrdersList = actualOrderService.GetOrdersByUserId(userId); //Assert Assert.AreEqual(resultOrdersList.Count(), expectedCount); Assert.Contains(matchingOrder, resultOrdersList.ToList()); }