public void Given_GetTransactions_When_condition_Should_expect() { // Given var transactionRepository = new FakeRepository <POSOrder>(new[] { GetSeedTransaction() }); var service = new POSOrderService(transactionRepository, new TransactionValidator()); // When var transactions = service.GetTransactions(); // Then Assert.NotEmpty(transactions); }
public void Given_CreateTransaction_When_condition_Should_expect() { //Given var transaction = GetSeedTransaction(); var transactionRepository = new FakeRepository <POSOrder>(); var service = new POSOrderService(transactionRepository, new TransactionValidator()); //When var result = service.CreateTransaction(transaction); var createdTransaction = transactionRepository.GetBy(result.Value.Id); //Then Assert.True(result.Success); Assert.Equal(1, createdTransaction.Id); }
public void Given_GetTransactionsByDate_When_condition_Should_expect() { // Given var todayDate = DateTimeOffset.UtcNow; var transactions = Enumerable.Repeat(GetSeedTransaction(), 5).Select((t, index) => { t.CreatedAt = todayDate.AddDays(index % 2.0 == 0.0 ? -1.0 * index : 0.0); return(t); }); var transactionRepository = new FakeRepository <POSOrder>(transactions); var service = new POSOrderService(transactionRepository, new TransactionValidator()); // When var todayTransactions = service.GetTransactionsByDate(todayDate); // Then todayTransactions.ToList().ForEach((t) => Assert.True(t.CreatedAt.Day >= todayDate.Day)); }
public void Given_GetTransactionsByDateAsync_When_condition_Should_expect() { // Given var todayDate = DateTimeOffset.UtcNow; var transactions = Enumerable.Repeat(GetSeedTransaction(), 5).Select((t, index) => { t.CreatedAt = index % 2.0 == 0 ? todayDate : DateTimeOffset.UtcNow.AddDays(-1.0 * index); return(t); }); var transactionRepository = new FakeRepository <POSOrder>(transactions); var service = new POSOrderService(transactionRepository, new TransactionValidator()); // When var result = service.GetTransactionsByDateAsync(todayDate).GetAwaiter().GetResult(); // Then Assert.NotEmpty(result); result.ToList().ForEach(transaction => Assert.True(transaction.CreatedAt.Day >= todayDate.Day)); }
public void Given_GetTodayTransactions_When_condition_Should_expect() { // Given var transaction = GetSeedTransaction(); transaction.CreatedAt = DateTimeOffset.UtcNow; var oldTransaction = GetSeedTransaction(); var oldDate = DateTimeOffset.UtcNow.AddDays(-2); oldTransaction.CreatedAt = oldDate; var transactionRepository = new FakeRepository <POSOrder>(new[] { transaction, oldTransaction }); var service = new POSOrderService(transactionRepository, new TransactionValidator()); // When var result = service.GetTodayTransactions(); // Then Assert.NotEmpty(result); Assert.Collection(result, (item) => Assert.True(item.CreatedAt.Day > oldDate.Day, "CreatedAt is a today date")); }
public async Task Given_GetTodayTransactionsAsync_When_condition_Should_expect() { // Given var todayDate = DateTimeOffset.UtcNow; var transactions = Enumerable.Range(0, 10).Select((i) => { var transaction = new POSOrder { CreatedAt = i % 2 == 0 ? todayDate : DateTimeOffset.UtcNow.AddDays(-2) }; return(transaction); }); var transactionRepository = new FakeRepository <POSOrder>(transactions); var service = new POSOrderService(transactionRepository, new TransactionValidator()); // When //var result = Task.Run(async () => await service.GetTodayTransactionsAsync()); //var result = ; var result = await service.GetTodayTransactionsAsync().ToListAsync(); // Then Assert.NotEmpty(result); result.ForEach(transaction => Assert.True(transaction.CreatedAt.Day >= todayDate.Day)); }