package eu.europeana.service.ir.image.api; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.io.IOException; import java.util.List; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import eu.europeana.service.ir.image.IRConfiguration; import eu.europeana.service.ir.image.api.ImageSearchingService; import eu.europeana.service.ir.image.api.ImageSearchingServiceImpl; import eu.europeana.service.ir.image.exceptions.ImageIndexingException; import eu.europeana.service.ir.image.exceptions.ImageSearchingException; import eu.europeana.service.ir.image.web.model.json.SearchResultItem; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "/image-similarity-context.xml" }) public class ImageSearchingServiceTest { @Autowired ImageSearchingService imageSearchingService; @Autowired IRConfiguration configuration; @Test public void testSearchById() throws ImageIndexingException, IOException, ImageSearchingException{ String euId = "/10106/2C2A2B381740CC28B01445B9256E11AF9EFCEECA"; imageSearchingService.searchSimilar(euId); List<SearchResultItem> results = imageSearchingService.getResults(0, 5); for (SearchResultItem resultItem : results) { System.out.println(resultItem.getResourceId()); } assertTrue(results.size() > 0); assertEquals(euId, results.get(0).getResourceId()); } @Test public void testSearchById_TestDs() throws ImageIndexingException, IOException, ImageSearchingException{ String euId = "/10106/2C2A2B381740CC28B01445B9256E11AF9EFCEECA"; //create index searcher for test dataset ImageSearchingService imageSearchingServiceTest = new ImageSearchingServiceImpl("test", configuration); //open index imageSearchingServiceTest.init(); //perform search imageSearchingServiceTest.searchSimilar(euId); List<SearchResultItem> results = imageSearchingServiceTest.getResults(0, 5); for (SearchResultItem resultItem : results) { System.out.println(resultItem.getResourceId()); } //verify results assertTrue(results.size() > 0); assertEquals(euId, results.get(0).getResourceId()); } @Test public void testSearchById_DemoDs() throws ImageIndexingException, IOException, ImageSearchingException{ String euId = "/10106/2C2A2B381740CC28B01445B9256E11AF9EFCEECA"; //create index searcher for test dataset ImageSearchingService imageSearchingServiceTest = new ImageSearchingServiceImpl("demo", configuration); //open index imageSearchingServiceTest.init(); //perform search imageSearchingServiceTest.searchSimilar(euId); List<SearchResultItem> results = imageSearchingServiceTest.getResults(0, 5); for (SearchResultItem resultItem : results) { System.out.println(resultItem.getResourceId()); } //verify results assertTrue(results.size() > 0); assertEquals(euId, results.get(0).getResourceId()); } }