Don’t allow null for Sone in SonePart
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Wed, 5 Oct 2016 19:19:34 +0000 (21:19 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Wed, 5 Oct 2016 19:19:34 +0000 (21:19 +0200)
src/main/java/net/pterodactylus/sone/text/SonePart.java
src/test/java/net/pterodactylus/sone/text/SonePartTest.java

index cbafc61..576eb7b 100644 (file)
 
 package net.pterodactylus.sone.text;
 
+import java.util.Objects;
+
+import javax.annotation.Nonnull;
+
 import net.pterodactylus.sone.data.Sone;
 import net.pterodactylus.sone.template.SoneAccessor;
 
@@ -27,39 +31,17 @@ import net.pterodactylus.sone.template.SoneAccessor;
  */
 public class SonePart implements Part {
 
-       /** The referenced {@link Sone}. */
        private final Sone sone;
 
-       /**
-        * Creates a new Sone part.
-        *
-        * @param sone
-        *            The referenced Sone
-        */
-       public SonePart(Sone sone) {
-               this.sone = sone;
+       public SonePart(@Nonnull Sone sone) {
+               this.sone = Objects.requireNonNull(sone);
        }
 
-       //
-       // ACCESSORS
-       //
-
-       /**
-        * Returns the referenced Sone.
-        *
-        * @return The referenced Sone
-        */
+       @Nonnull
        public Sone getSone() {
                return sone;
        }
 
-       //
-       // PART METHODS
-       //
-
-       /**
-        * {@inheritDoc}
-        */
        @Override
        public String getText() {
                return SoneAccessor.getNiceName(sone);
index 6ca2858..589acf7 100644 (file)
@@ -34,4 +34,9 @@ public class SonePartTest {
                assertThat(part.getText(), is("sone"));
        }
 
+       @Test(expected = NullPointerException.class)
+       public void nullIsNotAllowedForSone() {
+           new SonePart(null);
+       }
+
 }