### Question:
UserDataStoreFactory { public UserDataStore createCloudDataStore() { final UserEntityJsonMapper userEntityJsonMapper = new UserEntityJsonMapper(); final RestApi restApi = new RestApiImpl(this.context, userEntityJsonMapper); return new CloudUserDataStore(restApi, this.userCache); } @Inject  UserDataStoreFactory(@NonNull Context context, @NonNull UserCache userCache); UserDataStore create(int userId); UserDataStore createCloudDataStore();  }### Answer:
@Test public void testCreateCloudDataStore() { given(mockUserCache.isExpired()).willReturn(true); given(mockUserCache.isCached(FAKE_USER_ID)).willReturn(false); UserDataStore userDataStore = userDataStoreFactory.create(FAKE_USER_ID); assertThat(userDataStore, is(notNullValue())); assertThat(userDataStore, is(instanceOf(CloudUserDataStore.class))); verify(mockUserCache).isExpired(); }