package focusedCrawler.link.frontier.selector; import static java.util.Arrays.asList; import static org.hamcrest.CoreMatchers.is; import static org.hamcrest.CoreMatchers.notNullValue; import static org.junit.Assert.assertThat; import java.util.List; import org.junit.Test; import focusedCrawler.link.frontier.LinkRelevance; public class RandomLinkSelectorTest { @Test public void shouldSelectLinksRandomly() throws Exception { // given RandomLinkSelector selector = new RandomLinkSelector(); List<LinkRelevance> frontier = asList( new LinkRelevance("http://localhost/299", 299), new LinkRelevance("http://localhost/199", 199), new LinkRelevance("http://localhost/099", 99), new LinkRelevance("http://localhost/001", 1) ); int numberOfLinks = 3; // when selector.startSelection(numberOfLinks); for(LinkRelevance link : frontier) { selector.evaluateLink(link); } List<LinkRelevance> links = selector.getSelectedLinks(); // then assertThat(links, is(notNullValue())); assertThat(links.size(), is(numberOfLinks)); } }