### Question:
RepositoriesViewModel extends AbstractViewModel { @NonNull Observable<GitHubRepository> getGitHubRepositoryObservable(@NonNull final Integer repositoryId) { checkNotNull(repositoryId); return getGitHubRepository .call(repositoryId) .doOnNext((repository) -> Log.v(TAG, "Received repository " + repository.getId())); } RepositoriesViewModel(@NonNull final GetGitHubRepositorySearch getGitHubRepositorySearch,
                                 @NonNull final GetGitHubRepository getGitHubRepository); @NonNull Observable<GitHubRepository> getSelectRepository(); @NonNull Observable<List<GitHubRepository>> getRepositories(); @NonNull Observable<ProgressStatus> getNetworkRequestStatusText(); void setSearchString(@NonNull final String searchString); void selectRepository(@NonNull final GitHubRepository repository); @Override void subscribeToDataStoreInternal(@NonNull final CompositeDisposable compositeDisposable);  }### Answer:
@Test(expected = NullPointerException.class) public void testThrowsNullPointerExceptionWhenRepositoryIdIsNull() { viewModel.getGitHubRepositoryObservable(null); }