### Question:
AddProfileMemberHelper implements DatastoreHasAdd<ProfileMemberItem> { @Override public ProfileMemberItem add(ProfileMemberItem item) { ProfileMember addedProfileMember = addProfileMember(item.getProfileId(), item.getUserId(), item.getGroupId(), item.getRoleId()); return new ProfileMemberItemConverter().convert(addedProfileMember); } AddProfileMemberHelper(ProfileMemberEngineClient engineClient); @Override ProfileMemberItem add(ProfileMemberItem item);  }### Answer:
@Test public void testWeCanCreateAMembershipForAUSer() { ProfileMember aKnownProfile = anEngineProfileMember().build(); when(engineClient.createProfileMember(1L, 2L, null, null)).thenReturn(aKnownProfile); ProfileMemberItem item = aProfileMemberItem().withProfileId(1L).withUserId(2L).withGroupId(null) .withRoleId(null).build(); ProfileMemberItem newItem = addProfileHelper.add(item); assertTrue(areEquals(aProfileMemberItem().from(aKnownProfile).build(), newItem)); }