public void GetValues_InitializedData_IgnoreTransfers() { //Setup var categoryRepoSetup = new Mock <ICategoryRepository>(); categoryRepoSetup.Setup(x => x.GetList(null)).Returns(new List <CategoryViewModel> { new CategoryViewModel { Id = 1, Name = "Ausgehen" } }); var categoryRepo = categoryRepoSetup.Object; var paymentRepoSetup = new Mock <IPaymentRepository>(); paymentRepoSetup.Setup(x => x.GetList(null)).Returns(new List <PaymentViewModel> { new PaymentViewModel { Id = 1, Type = PaymentType.Income, Date = DateTime.Today, Amount = 60, Category = categoryRepo.GetList().First(), CategoryId = 1 }, new PaymentViewModel { Id = 2, Type = PaymentType.Expense, Date = DateTime.Today, Amount = 90, Category = categoryRepo.GetList().First(), CategoryId = 1 }, new PaymentViewModel { Id = 3, Type = PaymentType.Transfer, Date = DateTime.Today, Amount = 40, Category = categoryRepo.GetList().First(), CategoryId = 1 } }); //Excution var result = new CategorySummaryDataProvider(paymentRepoSetup.Object, categoryRepo).GetValues(DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3)).ToList(); //Assertion result.Count.ShouldBe(1); result.First().Value.ShouldBe(-30); }
public void GetValues_InitializedData_IgnoreTransfers() { //Setup var paymentRepoSetup = new Mock <IPaymentRepository>(); paymentRepoSetup.SetupAllProperties(); var categoryRepoSetup = new Mock <IRepository <Category> >(); categoryRepoSetup.SetupAllProperties(); var categoryRepo = categoryRepoSetup.Object; categoryRepo.Data = new ObservableCollection <Category>(new List <Category> { new Category { Id = 1, Name = "Ausgehen" } }); var paymentRepository = paymentRepoSetup.Object; paymentRepository.Data = new ObservableCollection <Payment>(new List <Payment> { new Payment { Id = 1, Type = (int)PaymentType.Income, Date = DateTime.Today, Amount = 60, Category = categoryRepo.Data.First(), CategoryId = 1 }, new Payment { Id = 2, Type = (int)PaymentType.Expense, Date = DateTime.Today, Amount = 90, Category = categoryRepo.Data.First(), CategoryId = 1 }, new Payment { Id = 3, Type = (int)PaymentType.Transfer, Date = DateTime.Today, Amount = 40, Category = categoryRepo.Data.First(), CategoryId = 1 } }); //Excution var result = new CategorySummaryDataProvider(paymentRepository, categoryRepo).GetValues(DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3)).ToList(); //Assertion result.Count.ShouldBe(1); result.First().Value.ShouldBe(-30); }
public void GetValues_InitializedData_IgnoreTransfers() { //Setup var paymentRepoSetup = new Mock<IPaymentRepository>(); paymentRepoSetup.SetupAllProperties(); var categoryRepoSetup = new Mock<IRepository<Category>>(); categoryRepoSetup.SetupAllProperties(); var categoryRepo = categoryRepoSetup.Object; categoryRepo.Data = new ObservableCollection<Category>(new List<Category> { new Category {Id = 1, Name = "Ausgehen"} }); var paymentRepository = paymentRepoSetup.Object; paymentRepository.Data = new ObservableCollection<Payment>(new List<Payment> { new Payment { Id = 1, Type = (int) PaymentType.Income, Date = DateTime.Today, Amount = 60, Category = categoryRepo.Data.First(), CategoryId = 1 }, new Payment { Id = 2, Type = (int) PaymentType.Expense, Date = DateTime.Today, Amount = 90, Category = categoryRepo.Data.First(), CategoryId = 1 }, new Payment { Id = 3, Type = (int) PaymentType.Transfer, Date = DateTime.Today, Amount = 40, Category = categoryRepo.Data.First(), CategoryId = 1 } }); //Excution var result = new CategorySummaryDataProvider(paymentRepository, categoryRepo).GetValues(DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3)).ToList(); //Assertion result.Count.ShouldBe(1); result.First().Value.ShouldBe(-30); }
public void GetValues_CorrectSums() { // Arrange var categoryServiceMock = new Mock <ICategoryService>(); categoryServiceMock.Setup(x => x.GetAllCategoriesWithPayments()) .Returns(Task.FromResult <IEnumerable <Category> >(new List <Category> { new Category { Data = { Id = 1, Name = "Ausgehen", Payments = new List <PaymentEntity> { new PaymentEntity { Id = 1, Type = PaymentType.Income, Date = DateTime.Today, Amount = 60, CategoryId = 1 }, new PaymentEntity { Id = 2, Type = PaymentType.Expense, Date = DateTime.Today, Amount = 90, CategoryId = 1 }, new PaymentEntity { Id = 3, Type = PaymentType.Transfer, Date = DateTime.Today, Amount = 40, CategoryId = 1 } } } } })); // Act var result = new CategorySummaryDataProvider(categoryServiceMock.Object).GetValues(DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3)) .Result.ToList(); // Assert result.Count.ShouldBe(1); result.First().Value.ShouldBe(-30); }
public void GetValues_InitializedData_HandleDateCorrectly() { //Setup var categoryRepoSetup = new Mock <ICategoryRepository>(); categoryRepoSetup.Setup(x => x.GetList(It.IsAny <Expression <Func <CategoryViewModel, bool> > >())).Returns(new List <CategoryViewModel> { new CategoryViewModel { Id = 1, Name = "Einkaufen" }, new CategoryViewModel { Id = 2, Name = "Ausgehen" }, new CategoryViewModel { Id = 3, Name = "Bier" } }); var categoryRepo = categoryRepoSetup.Object; var paymentRepoSetup = new Mock <IPaymentRepository>(); paymentRepoSetup.Setup(x => x.GetList(It.IsAny <Expression <Func <PaymentViewModel, bool> > >())).Returns(new List <PaymentViewModel> { new PaymentViewModel { Id = 1, Type = (int)PaymentType.Expense, Date = DateTime.Today.AddDays(-5), Amount = 60, Category = categoryRepo.GetList().ToList()[0], CategoryId = 1 }, new PaymentViewModel { Id = 2, Type = (int)PaymentType.Expense, Date = DateTime.Today, Amount = 90, Category = categoryRepo.GetList().ToList()[1], CategoryId = 2 }, new PaymentViewModel { Id = 3, Type = (int)PaymentType.Expense, Date = DateTime.Today.AddDays(5), Amount = 40, Category = categoryRepo.GetList().ToList()[2], CategoryId = 3 } }); //Excution var result = new CategorySummaryDataProvider(paymentRepoSetup.Object, categoryRepo).GetValues(DateTime.Today.AddDays(-3), DateTime.Today.AddDays(3)).ToList(); //Assertion result.Count.ShouldBe(1); result.First().Value.ShouldBe(-90); }