package com.coravy.hudson.plugins.github; import static org.junit.Assert.assertEquals; import hudson.MarkupText; import org.junit.Test; public class GithubLinkAnnotatorTest { private final static String GITHUB_URL = "http://github.com/juretta/iphone-project-tools/"; @Test public final void testAnnotateStringMarkupText() { assertAnnotatedTextEquals("An issue Closes #1 link", "An issue <a href='" + GITHUB_URL + "issues/1/find'>Closes #1</a> link"); assertAnnotatedTextEquals("An issue Close #1 link", "An issue <a href='" + GITHUB_URL + "issues/1/find'>Close #1</a> link"); assertAnnotatedTextEquals("An issue closes #123 link", "An issue <a href='" + GITHUB_URL + "issues/123/find'>closes #123</a> link"); assertAnnotatedTextEquals("An issue close #9876 link", "An issue <a href='" + GITHUB_URL + "issues/9876/find'>close #9876</a> link"); } private void assertAnnotatedTextEquals(final String originalText, final String expectedAnnotatedText) { MarkupText markupText = new MarkupText(originalText); GithubLinkAnnotator annotator = new GithubLinkAnnotator(); annotator.annotate(new GithubUrl(GITHUB_URL), markupText, null); assertEquals(expectedAnnotatedText, markupText.toString()); } }