package net.pterodactylus.sone.text; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.is; import org.junit.Test; /** * Unit test for {@link LinkPart}. * * @author <a href="mailto:bombe@pterodactylus.net">David ‘Bombe’ Roden</a> */ public class LinkPartTest { private final LinkPart part = new LinkPart("link", "text", "title"); @Test public void linkIsRetainedCorrectly() { assertThat(part.getLink(), is("link")); } @Test public void textIsRetainedCorrectly() { assertThat(part.getText(), is("text")); } @Test public void titleIsRetainedCorrectly() { assertThat(part.getTitle(), is("title")); } @Test public void textIsUsedAsTitleIfNoTitleIsGiven() { assertThat(new LinkPart("link", "text").getTitle(), is("text")); } @Test(expected = NullPointerException.class) public void nullIsNotAllowedForLink() { new LinkPart(null, "text", "title"); } @Test(expected = NullPointerException.class) public void nullIsNotAllowedForText() { new LinkPart("link", null, "title"); } @Test(expected = NullPointerException.class) public void nullIsNotAllowedForLinkInSecondaryConstructor() { new LinkPart(null, "text"); } @Test(expected = NullPointerException.class) public void nullIsNotAllowedForTextInSecondaryConstructor() { new LinkPart("link", null); } @Test(expected = NullPointerException.class) public void nullIsNotAllowedForTitle() { new LinkPart("link", "text", null); } }