diff options
author | Jake Wharton <jakewharton@gmail.com> | 2018-03-12 08:51:00 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-12 08:51:00 -0400 |
commit | 8ab7616e7d1acc76231bea1aa283c0fdefa24864 (patch) | |
tree | 56d301898a88c9d19f6a4a2d4745409f5c58c1b8 | |
parent | d91f8e1374f7ccdb68d92c206c84864cd09c02f6 (diff) | |
parent | f24801f4bdafa1190211959653b2eb31296cfbb3 (diff) | |
download | javapoet-8ab7616e7d1acc76231bea1aa283c0fdefa24864.tar.gz |
Merge pull request #631 from NightlyNexus/eric.annotationSpec
Fail fast with null AnnotationSpec on type.
-rw-r--r-- | src/main/java/com/squareup/javapoet/TypeSpec.java | 1 | ||||
-rw-r--r-- | src/test/java/com/squareup/javapoet/TypeSpecTest.java | 21 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/main/java/com/squareup/javapoet/TypeSpec.java b/src/main/java/com/squareup/javapoet/TypeSpec.java index feac8ef..46de3a5 100644 --- a/src/main/java/com/squareup/javapoet/TypeSpec.java +++ b/src/main/java/com/squareup/javapoet/TypeSpec.java @@ -435,6 +435,7 @@ public final class TypeSpec { } public Builder addAnnotation(AnnotationSpec annotationSpec) { + checkNotNull(annotationSpec, "annotationSpec == null"); this.annotations.add(annotationSpec); return this; } diff --git a/src/test/java/com/squareup/javapoet/TypeSpecTest.java b/src/test/java/com/squareup/javapoet/TypeSpecTest.java index 5d87582..9cd22c2 100644 --- a/src/test/java/com/squareup/javapoet/TypeSpecTest.java +++ b/src/test/java/com/squareup/javapoet/TypeSpecTest.java @@ -325,6 +325,27 @@ public final class TypeSpecTest { + "}\n"); } + @Test public void addAnnotationDisallowsNull() { + try { + TypeSpec.classBuilder("Foo").addAnnotation((AnnotationSpec) null); + fail(); + } catch (NullPointerException expected) { + assertThat(expected).hasMessageThat().isEqualTo("annotationSpec == null"); + } + try { + TypeSpec.classBuilder("Foo").addAnnotation((ClassName) null); + fail(); + } catch (NullPointerException expected) { + assertThat(expected).hasMessageThat().isEqualTo("type == null"); + } + try { + TypeSpec.classBuilder("Foo").addAnnotation((Class<?>) null); + fail(); + } catch (NullPointerException expected) { + assertThat(expected).hasMessageThat().isEqualTo("clazz == null"); + } + } + @Test public void enumWithSubclassing() throws Exception { TypeSpec roshambo = TypeSpec.enumBuilder("Roshambo") .addModifiers(Modifier.PUBLIC) |