public void AddOrderSaveShouldAddOrderSave() { var options = new DbContextOptionsBuilder <BankCloudDbContext>() .UseInMemoryDatabase(databaseName: "Add_OrderSave_Database") .Options; var dbContext = new BankCloudDbContext(options); var ordersService = new OrdersService(dbContext, null); var product = new Save { Name = "ABCD", Amount = 1000m, Commission = 0, InterestRate = 10m, Period = 12 }; var order = new OrderSave { Name = product.Name, }; order.MonthlyFee = BankCloudCalculator.CalculateDepositMonthlyIncome(order, product); ordersService.AddOrderSave(order, product); dbContext.SaveChanges(); var orders = dbContext.OrdersSaves.ToList(); Assert.Single(orders); Assert.Equal(order.Name, orders.First().Name); }
public void ApproveSaveRequestSholudSetOrderSaveToApprove() { var options = new DbContextOptionsBuilder <BankCloudDbContext>() .UseInMemoryDatabase(databaseName: "Approve_OrderSave_Database") .Options; var dbContext = new BankCloudDbContext(options); var ordersService = new OrdersService(dbContext, null); var orderId = "abcd123"; var product = new Save { Name = "ABCD", Amount = 1000m, Commission = 0, InterestRate = 10m, Period = 12, Account = new Account { Currency = new Currency { IsoCode = "USD" } } }; var order = new OrderSave { Id = orderId, Name = product.Name, Save = product, Account = new Account { Currency = new Currency { IsoCode = "USD" } } }; order.MonthlyFee = BankCloudCalculator.CalculateDepositMonthlyIncome(order, product); dbContext.OrdersSaves.Add(order); dbContext.SaveChanges(); var ordered = dbContext.OrdersSaves.Find(orderId); ordersService.ApproveSaveRequest(ordered); dbContext.SaveChanges(); var approved = dbContext.OrdersSaves.Find(orderId); Assert.Equal(OrderStatus.Approved, approved.Status); }
public void AddOrderSave(OrderSave order, Product save) { if (order == null || save == null) { return; } order.MonthlyFee = BankCloudCalculator.CalculateDepositMonthlyIncome(order, save); order.Status = OrderStatus.Pending; order.Name = save.Name; save.Popularity++; context.OrdersSaves.Add(order); context.SaveChanges(); }