aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEgor Andreevici <egor@squareup.com>2020-01-06 14:42:40 -0500
committerEgor Andreevici <egor@squareup.com>2020-01-06 14:42:40 -0500
commiteff1ee43296678eb0b0588faf4f18c34d8be4baf (patch)
tree8dabf5923a1f47fde4838ee9f95f66aa86b476b0
parent74a0f27a71a5627a81799010d761fb4f5b08e1f6 (diff)
downloadjavapoet-eff1ee43296678eb0b0588faf4f18c34d8be4baf.tar.gz
Test for JavaFile.writeToPath
-rw-r--r--src/main/java/com/squareup/javapoet/JavaFile.java11
-rw-r--r--src/test/java/com/squareup/javapoet/FileWritingTest.java7
2 files changed, 14 insertions, 4 deletions
diff --git a/src/main/java/com/squareup/javapoet/JavaFile.java b/src/main/java/com/squareup/javapoet/JavaFile.java
index d7fa6df..da3dd86 100644
--- a/src/main/java/com/squareup/javapoet/JavaFile.java
+++ b/src/main/java/com/squareup/javapoet/JavaFile.java
@@ -117,7 +117,7 @@ public final class JavaFile {
/**
* Writes this to {@code directory} as UTF-8 using the standard directory structure.
* Returns the {@link Path} instance to which source is actually written.
- * */
+ */
public Path writeToPath(Path directory) throws IOException {
return writeToPath(directory, UTF_8);
}
@@ -125,7 +125,8 @@ public final class JavaFile {
/**
* Writes this to {@code directory} with the provided {@code charset} using the standard directory
* structure.
- * Returns the {@link Path} instance to which source is actually written. */
+ * Returns the {@link Path} instance to which source is actually written.
+ */
public Path writeToPath(Path directory, Charset charset) throws IOException {
checkArgument(Files.notExists(directory) || Files.isDirectory(directory),
"path %s exists but is not a directory.", directory);
@@ -150,8 +151,10 @@ public final class JavaFile {
writeTo(directory.toPath());
}
- /** Writes this to {@code directory} as UTF-8 using the standard directory structure.
- * Returns the {@link File} instance to which source is actually written. */
+ /**
+ * Writes this to {@code directory} as UTF-8 using the standard directory structure.
+ * Returns the {@link File} instance to which source is actually written.
+ */
public File writeToFile(File directory) throws IOException {
final Path outputPath = writeToPath(directory.toPath());
return outputPath.toFile();
diff --git a/src/test/java/com/squareup/javapoet/FileWritingTest.java b/src/test/java/com/squareup/javapoet/FileWritingTest.java
index f817ddb..58e5b62 100644
--- a/src/test/java/com/squareup/javapoet/FileWritingTest.java
+++ b/src/test/java/com/squareup/javapoet/FileWritingTest.java
@@ -216,4 +216,11 @@ public final class FileWritingTest {
+ "class Taco {\n"
+ "}\n");
}
+
+ @Test public void writeToPathReturnsPath() throws IOException {
+ JavaFile javaFile = JavaFile.builder("foo", TypeSpec.classBuilder("Taco").build()).build();
+ Path filePath = javaFile.writeToPath(fsRoot);
+ // Cast to avoid ambiguity between assertThat(Path) and assertThat(Iterable<?>)
+ assertThat((Iterable<?>) filePath).isEqualTo(fsRoot.resolve(fs.getPath("foo", "Taco.java")));
+ }
}