VKontakteAdapter implements ApiAdapter<VKontakte> { @Override public UserProfile fetchUserProfile(VKontakte vkontakte) { VKontakteProfile profile = vkontakte.usersOperations().getProfile(); return new UserProfileBuilder() .setFirstName(profile.getFirstName()) .setLastName(profile.getLastName()) .setName(profile.getFirstName() + " " + profile.getLastName()) .build(); }  @Override boolean test(VKontakte vkontakte); @Override void setConnectionValues(VKontakte vkontakte, ConnectionValues values); @Override UserProfile fetchUserProfile(VKontakte vkontakte); @Override void updateStatus(VKontakte vkontakte, String message);  }
@Test public void fetchProfile() { Mockito.when(usersOperations.getProfile()).thenReturn(new VKontakteProfile("123", "Viktor", "Kolodrevskiy", "http: Mockito.when(vkontakte.usersOperations()).thenReturn(usersOperations); UserProfile profile = apiAdapter.fetchUserProfile(vkontakte); assertEquals("Viktor Kolodrevskiy", profile.getName()); assertEquals("Viktor", profile.getFirstName()); assertEquals("Kolodrevskiy", profile.getLastName()); assertNull(profile.getEmail()); assertNull(profile.getUsername()); }