@Test public void save_gets_data_from_screen_and_save_to_repository() { when(view.fillBill(any(Bill.class))).thenReturn(new Bill()); when(repository.save(any(Bill.class))).thenReturn(new OperationResult()); presenter.save(); verify(view, times(1)).fillBill(any(Bill.class)); verify(repository, times(1)).save(any(Bill.class)); verify(view, times(1)).finishView(); }
@Test public void call_view_with_errors() { OperationResult result = new OperationResult(); result.addError(ValidationError.NAME); when(view.fillBill(any(Bill.class))).thenReturn(new Bill()); when(repository.save(any(Bill.class))).thenReturn(result); presenter.save(); verify(view, times(1)).showError(ValidationError.NAME); }
@Test(expected = BillNotFoundException.class) public void load_empty_bill_throws_not_found_exception() { when(repository.find(UUID)).thenReturn(null); presenter.loadBill(UUID); }
@Before public void setUp() throws Exception { initMocks(this); presenter = new BillPresenter(repository); presenter.attachView(view); }