|
Answer» We need to CREATE the mock object and need to pass the invocation. We must override the method in the actual DB with the method over here and pass the response object.
Mockito.when(mockObjectDao.find((GUID) Mockito.anyObject())).thenAnswer(new Answer<responseObject>() { @Override public responseObject answer(InvocationOnMock invocation) throws Throwable { Guid responseObjectID = (Guid) invocation.getArguments()[0]; responseObject responseDbObject = new responseObject(); responseDbObject.setresponseObjectId(responseObjectID); responseObjectLink responseObjectLink = new responseObjectLink(); responseObjectLink.setLedgerBookId(Guid.createGuid()); responseObjectLink.setresponseObjectId(responseObjectID); responseObjectLink.setLedgerObjectId(Guid.createGuid()); responseDbObject.getresponseObjectLinks().add(responseObjectLink); for (Contact sourceContact : responseObjectDTO.getSourceContacts()) { if (!sourceContact.getObjectId().EQUALS(responseObjectID)) { responseObjectLink = new responseObjectLink(); responseObjectLink.setLedgerBookId(sourceContact.getAddressBookId()); responseObjectLink.setresponseObjectId(responseObjectID); responseObjectLink.setLedgerObjectId(sourceContact.getObjectId()); responseDbObject.getresponseObjectLinks().add(responseObjectLink); } } return responseDbObject; } }); We need to create the mock object and need to pass the invocation. We must override the method in the actual DB with the method over here and pass the response object. Mockito.when(mockObjectDao.find((Guid) Mockito.anyObject())).thenAnswer(new Answer<responseObject>() { @Override public responseObject answer(InvocationOnMock invocation) throws Throwable { Guid responseObjectID = (Guid) invocation.getArguments()[0]; responseObject responseDbObject = new responseObject(); responseDbObject.setresponseObjectId(responseObjectID); responseObjectLink responseObjectLink = new responseObjectLink(); responseObjectLink.setLedgerBookId(Guid.createGuid()); responseObjectLink.setresponseObjectId(responseObjectID); responseObjectLink.setLedgerObjectId(Guid.createGuid()); responseDbObject.getresponseObjectLinks().add(responseObjectLink); for (Contact sourceContact : responseObjectDTO.getSourceContacts()) { if (!sourceContact.getObjectId().equals(responseObjectID)) { responseObjectLink = new responseObjectLink(); responseObjectLink.setLedgerBookId(sourceContact.getAddressBookId()); responseObjectLink.setresponseObjectId(responseObjectID); responseObjectLink.setLedgerObjectId(sourceContact.getObjectId()); responseDbObject.getresponseObjectLinks().add(responseObjectLink); } } return responseDbObject; } });
|