### Question:
RxFiles { @Nonnull public Single<Long> sizeInBytes(@Nonnull final File file) { checkNotNull(file, "\'file\' must not be null."); return exists(file).flatMap(exists -> exists ? Single.fromCallable(file::length) : Single.error(new IOException(format("File \'%1$s\' does not exist.", file)))); }  @Nonnull Completable createDirectory(@Nonnull final File directory); @Nonnull Completable createNewFile(@Nonnull final File file); @Nonnull Completable delete(@Nonnull final File file); @Nonnull Observable<File> getFilesInDirectory(@Nonnull final File directory); @Nonnull Single<String> readStringFromFile(@Nonnull final File file, @Nonnull final Charset charset); @Nonnull Completable writeStringToFile(
      @Nonnull final String data,
      @Nonnull final File file,
      @Nonnull final Charset charset); @Nonnull Single<byte[]> readBytesFromFile(@Nonnull final File file); @Nonnull Completable writeBytesToFile(@Nonnull final byte[] data, @Nonnull final File file); @Nonnull Single<Boolean> exists(@Nonnull final File file); @Nonnull Single<Long> sizeInBytes(@Nonnull final File file); @Nonnull Single<Boolean> isFile(@Nonnull final File file); @Nonnull Single<Boolean> isDirectory(@Nonnull final File directory);  }### Answer:
@Test(expected = IllegalArgumentException.class) public void testSizeInBytes_nullFile() { rxFiles.sizeInBytes(null); }
@Test public void testSizeInBytes_nullFileThatDoesNotExist() { final File file = new File(testDirectory, "test"); rxFiles .sizeInBytes(file) .test() .awaitDone(200, MILLISECONDS) .assertError(IOException.class) .assertNoValues(); }