public UserActionEntity newCreateRequest(String requestId, String createdByUserId) { return new CreateRequestUserActionEntity( String.valueOf(getDateTime()), requestId, createdByUserId); } }
public String getCreatedByUserId() { return getActionParam(); }
public void addNewRequest(final RequestEntity newRequest) { mLogger.d(TAG, "addNewRequest(); request ID: " + newRequest.getId()); final CreateRequestUserActionEntity createRequestUserAction = new CreateRequestUserActionEntity( newRequest.getCreatedAt(), newRequest.getId(), newRequest.getCreatedBy()); mBackgroundThreadPoster.post(new Runnable() { @Override public void run() { // TODO: ensure atomicity of below actions using TransactionController mUserActionCacher.cacheUserAction(createRequestUserAction); mRequestsCacher.updateOrInsertAndNotify(newRequest); } }); }
@Test public void addNewRequest_createRequestUserActionCached() { // Arrange RequestEntity newRequest = RequestEntityProvider.getNewRequestEntity(); // Act SUT.addNewRequest(newRequest); // Assert mThreadPostersTestDouble.join(); CreateRequestUserActionEntity expectedUserAction = new CreateRequestUserActionEntity(newRequest.getCreatedAt(), newRequest.getId(), newRequest.getCreatedBy()); verify(mUserActionCacherMock).cacheUserAction(mUserActionsCaptor.capture()); UserActionEntity cachedUserAction = mUserActionsCaptor.getValue(); assertUserActionsEqual(cachedUserAction, expectedUserAction); }