@Test public void calculateDiscountPoints() { String productsFlatFile = "EL-002,FU-007,FU-008"; Purchase result = null; result = BillingCalculator.calculateTotalPurchase(customer, productsFlatFile); Customer client = Mockito.mock(Customer.class); client = result.getCustomer(); when(client.calculateDiscountPoints()) .thenReturn(result.getTotalPrice().multiply(new BigDecimal(Math.random() * 0.02))); when(client.discountPoints()).thenReturn(true); if ((client.getPoints().intValue()) > 1000) { client.discountPoints(); } }
/** test for all methods of customer points system of class Customer */ @Test public void addPoints() { int points; String productsFlatFile = "EL-002,FU-007,FU-008"; Purchase result = null; result = BillingCalculator.calculateTotalPurchase(customer, productsFlatFile); Customer client = Mockito.mock(Customer.class); when(client.calculatePoints()) .thenReturn(points = (result.getTotalPrice().divide(new BigDecimal(1000))).intValue()); when(client.addPoints()).thenReturn(customer.getPoints().add(new BigDecimal(points))); customer.calculatePoints(); customer.addPoints(); }