### Question:
RxFiles { @Nonnull public Completable createDirectory(@Nonnull final File directory) { checkNotNull(directory, "\'directory\' must not be null."); return Completable.fromAction(() -> FileUtils.forceMkdir(directory)); }  @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 testCreateDirectory_nullDirectory() { rxFiles.createDirectory(null); }
@Test public void testCreateDirectory_directoryAlreadyExistsAsADirectory() throws IOException { final File directory = new File(testDirectory, "test"); FileUtils.forceMkdir(directory); rxFiles .createDirectory(directory) .test() .awaitDone(200, MILLISECONDS) .assertNoErrors() .assertComplete(); }