package sagan.docs.support; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.junit.Before; import org.junit.Test; import sagan.projects.Project; import sagan.projects.ProjectRelease; import sagan.projects.ProjectReleaseBuilder; import sagan.search.types.ReferenceDoc; import java.util.Collections; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.Matchers.equalTo; import static org.hamcrest.collection.IsIterableContainingInOrder.contains; import static sagan.projects.ProjectRelease.ReleaseStatus.GENERAL_AVAILABILITY; public class ReferenceDocumentSearchEntryMapperTests { private Project project = new Project("spring", "Spring Project", "http://www.example.com/repo/spring-framework", "http://www.example.com/spring-framework", Collections.<ProjectRelease> emptyList(), false, "release"); private ProjectRelease version = new ProjectReleaseBuilder() .versionName("3.2.1.RELEASE") .releaseStatus(GENERAL_AVAILABILITY) .current(true).build(); private ReferenceDocumentSearchEntryMapper mapper = new ReferenceDocumentSearchEntryMapper(project, version); private ReferenceDoc entry; @Before public void setUp() throws Exception { Document document = Jsoup.parse("<p>ref doc</p>"); entry = mapper.map(document); } @Test public void facetPaths() { assertThat(entry.getFacetPaths(), contains("Projects", "Projects/Reference", "Projects/Spring Project", "Projects/Spring Project/3.2.1.RELEASE")); } @Test public void projectId() { assertThat(entry.getProjectId(), equalTo("spring")); } @Test public void version() { assertThat(entry.getVersion(), equalTo("3.2.1.RELEASE")); } @Test public void subTitle() { assertThat(entry.getSubTitle(), equalTo("Spring Project (3.2.1.RELEASE Reference)")); } }