public void ReturnCorrectData_WhenInvoked() { // Arrange Mapper.Reset(); AutomapperConfiguration.Initialize(); var mockContext = new Mock <IOnlineStoreContext>(); var stubDateTimeProvider = new MockDateTimeProvider(); var orders = new List <Order> { new Order { Comment = "Patka", CourierId = 1, OrderedOn = stubDateTimeProvider.Now, UserId = 1, User = new User() { Username = "******" } } }; var mockSet = new Mock <DbSet <Order> >(); mockSet.SetupData(orders); mockContext.Setup(s => s.Orders).Returns(mockSet.Object); var service = new Logic.Services.OrderService(mockContext.Object); // Act var ordersGot = service.GetAllOrders(); //Assert Assert.AreEqual(orders.Count, ordersGot.Count()); }
public void SetUp() { dateTimeProvider = new MockDateTimeProvider(); AppDomain.CurrentDomain.SetData("APPBASE", Environment.CurrentDirectory); fileNameWithoutExtension = Guid.NewGuid().ToString(); fileName = fileNameWithoutExtension + Extension; }
public void SetUp() { dateTimeProvider = new MockDateTimeProvider(); AppDomain.CurrentDomain.SetData("APPBASE", Environment.CurrentDirectory); fileNameWithoutExtension = Guid.NewGuid().ToString(); fileName = fileNameWithoutExtension + extension; }
public async Task FitbitUpdateEvent_BodyWeight_PublishedToIoMT() { var mockIntegrationRepository = new MockIntegrationRepository(); var mockFitbitClient = new MockFitbitClient(); var fitbitAuthenticationClient = new MockFitbitAuthenticationClient(); var mockFhirClient = new MockFhirClient(); var mockIoMTPublisher = new MockIoMTDataPublisher(); var mockDateTimeProvider = new MockDateTimeProvider(); mockIntegrationRepository.Integration = new Integration { Data = new FitbitIntegrationData { AccessTokenExpiresUtc = mockDateTimeProvider.UtcNow.AddMinutes(30) } }; mockFitbitClient.ResourceToReturn = new ResourceContainer { Body = new Body { Weight = 100 } }; var client = _factory .WithWebHostBuilder(builder => { builder.ConfigureTestServices(services => { services.Configure <IntegrationsApiSettings>(settings => { settings.EventsApiKey = "test"; }); services.AddTransient <IIntegrationRepository>(s => mockIntegrationRepository); services.AddTransient <IFitbitClient>(s => mockFitbitClient); services.AddTransient <IFitbitAuthenticationClient>(s => fitbitAuthenticationClient); services.AddTransient <IFhirClient>(s => mockFhirClient); services.AddTransient <IIoMTDataPublisher>(s => mockIoMTPublisher); services.AddTransient <IDateTimeProvider>(s => mockDateTimeProvider); }); }) .CreateClient(); var response = await client.PostAsync( "/v1/events?apiKey=test", new StringContent( JsonConvert.SerializeObject(new[] { EventFactory.FitbitProviderUpdateEvent }), Encoding.UTF8, "application/json")); var bodyWeight = Assert.IsType <BodyWeight>(mockIoMTPublisher.Published); Assert.Equal(100, bodyWeight.Weight); }
public void InvokeAddMethodOnOrders_WhenCourierFoundAndUsernameExists() { // Arrange var mockContext = new Mock <IOnlineStoreContext>(); var usersMock = new List <User> { new User { Username = "******" } }.GetQueryableMockDbSet(); var couriersMock = new List <Courier> { new Courier { FirstName = "Peshko", LastName = "Peshkov" } }.GetQueryableMockDbSet(); var ordersMock = new List <Order> { new Order() }.GetQueryableMockDbSet(); var productsMock = new List <Product> { new Product { Name = "Testproduct", Quantity = 5 } }.GetQueryableMockDbSet(); var orderProductsMock = new List <OrderProduct> { new OrderProduct() }.GetQueryableMockDbSet(); IDictionary <string, int> productsCounts = new Dictionary <string, int>(); productsCounts.Add("Testproduct", 2); var mockDateTimeProvider = new MockDateTimeProvider(); mockContext.Setup(x => x.Users).Returns(usersMock.Object); mockContext.Setup(x => x.Couriers).Returns(couriersMock.Object); mockContext.Setup(s => s.Orders).Returns(ordersMock.Object); mockContext.Setup(s => s.Products).Returns(productsMock.Object); mockContext.Setup(s => s.OrderProducts).Returns(orderProductsMock.Object); var service = new Logic.Services.OrderService(mockContext.Object); var orderToMake = new OrderMakeModel { Username = "******", OrderedOn = mockDateTimeProvider.Now, Comment = "Tralala", ProductNameAndCounts = productsCounts }; // Act service.MakeOrder(orderToMake); //Assert ordersMock.Verify(v => v.Add(It.IsNotNull <Order>()), Times.Once); }
public void ReduceTheAvailableProductQuantity_WhenOrderIsFinished() { // Arrange var mockContext = new Mock <IOnlineStoreContext>(); var usersMock = new List <User> { new User { Username = "******" } }.GetQueryableMockDbSet(); var couriersMock = new List <Courier> { new Courier { FirstName = "Peshko", LastName = "Peshkov" } }.GetQueryableMockDbSet(); var ordersMock = new List <Order> { new Order() }.GetQueryableMockDbSet(); var productsMock = new List <Product> { new Product { Name = "Testproduct", Quantity = 5 } }.GetQueryableMockDbSet(); var orderProductsMock = new List <OrderProduct> { new OrderProduct() }.GetQueryableMockDbSet(); IDictionary <string, int> productsCounts = new Dictionary <string, int>(); productsCounts.Add("Testproduct", 2); var mockDateTimeProvider = new MockDateTimeProvider(); mockContext.Setup(x => x.Users).Returns(usersMock.Object); mockContext.Setup(x => x.Couriers).Returns(couriersMock.Object); mockContext.Setup(s => s.Orders).Returns(ordersMock.Object); mockContext.Setup(s => s.Products).Returns(productsMock.Object); mockContext.Setup(s => s.OrderProducts).Returns(orderProductsMock.Object); var service = new Logic.Services.OrderService(mockContext.Object); var orderToMake = new OrderMakeModel { Username = "******", OrderedOn = mockDateTimeProvider.Now, Comment = "Tralala", ProductNameAndCounts = productsCounts }; // Act service.MakeOrder(orderToMake); //Assert Assert.AreEqual(3, mockContext.Object.Products.FirstOrDefault(f => f.Name == "Testproduct").Quantity); }
public void ThrowArgumentException_WhenQuantityIsNotEnough() { // Arrange var mockContext = new Mock <IOnlineStoreContext>(); var usersMock = new List <User> { new User { Username = "******" } }.GetQueryableMockDbSet(); var couriersMock = new List <Courier> { new Courier { FirstName = "Peshko", LastName = "Peshkov" } }.GetQueryableMockDbSet(); var ordersMock = new List <Order> { new Order() }.GetQueryableMockDbSet(); var productsMock = new List <Product> { new Product { Name = "Testproduct", Quantity = 5 } }.GetQueryableMockDbSet(); var orderProductsMock = new List <OrderProduct> { new OrderProduct() }.GetQueryableMockDbSet(); IDictionary <string, int> productsCounts = new Dictionary <string, int>(); productsCounts.Add("Testproduct", 7); var mockDateTimeProvider = new MockDateTimeProvider(); mockContext.Setup(x => x.Users).Returns(usersMock.Object); mockContext.Setup(x => x.Couriers).Returns(couriersMock.Object); mockContext.Setup(s => s.Orders).Returns(ordersMock.Object); mockContext.Setup(s => s.Products).Returns(productsMock.Object); mockContext.Setup(s => s.OrderProducts).Returns(orderProductsMock.Object); var service = new Logic.Services.OrderService(mockContext.Object); var orderToMake = new OrderMakeModel { Username = "******", OrderedOn = mockDateTimeProvider.Now, Comment = "Tralala", ProductNameAndCounts = productsCounts }; //Act && Assert Assert.ThrowsException <ArgumentException>(() => service.MakeOrder(orderToMake)); }
public CachingAnalyzerProviderTests() { _embeddedAnalyzerProvider = new Mock <IAnalyzerProvider>(); _mockDateTimeProvider = new MockDateTimeProvider(); }
public CachingDependencyAnalyzerProviderTests() { _embeddedDependencyAnalyzerProvider = new Mock <IDependencyAnalyzerProvider>(); _mockDateTimeProvider = new MockDateTimeProvider(); }