package com.flicklib.service.movie.xpress; import java.io.IOException; import java.util.List; import junit.framework.Assert; import org.junit.Before; import org.junit.Test; import com.flicklib.api.AbstractMovieInfoFetcher; import com.flicklib.domain.MoviePage; import com.flicklib.domain.MovieSearchResult; import com.flicklib.service.FileSourceLoader; import com.flicklib.service.movie.AliasingSourceLoader; public class XpressHuFetcherTest { private AliasingSourceLoader loader; private AbstractMovieInfoFetcher fetcher; @Before public void setUp() throws Exception { loader = new AliasingSourceLoader(new FileSourceLoader("UTF-8")); loader.putAlias("http://www.xpress.hu/", "xpresshu/main.html"); loader.putAlias("http://www.xpress.hu/dvd/keres.asp" + "::GOMB=1::Go2=Go::Go2.x=0::Go2.y=0::KERES=Breakfast::VID=066-193882322-6678351010467122", "xpresshu/search-result.html"); loader.putAlias("http://www.xpress.hu/dvd/film.asp?FILMAZ=7467", "xpresshu/film_7467.html"); fetcher = new XpressHuFetcher(loader); } @Test public void testBreakfastSearch() throws IOException { List<? extends MovieSearchResult> searchResult = fetcher.search("Breakfast"); Assert.assertNotNull("search result", searchResult); Assert.assertEquals("3 result", 3, searchResult.size()); Assert.assertEquals("title 1", "Nulladik óra", searchResult.get(0).getTitle()); Assert.assertEquals("title 2", "Bajnokok reggelije", searchResult.get(1).getTitle()); Assert.assertEquals("title 3", "Reggeli a Plútón", searchResult.get(2).getTitle()); Assert.assertEquals("orig title 1", "The Breakfast Club", searchResult.get(0).getOriginalTitle()); Assert.assertEquals("orig title 2", "Breakfast of Champions", searchResult.get(1).getOriginalTitle()); Assert.assertEquals("orig title 3", "Breakfast on Pluto", searchResult.get(2).getOriginalTitle()); Assert.assertEquals("orig year 1", Integer.valueOf(1985), searchResult.get(0).getYear()); Assert.assertEquals("orig year 2", Integer.valueOf(1999), searchResult.get(1).getYear()); Assert.assertEquals("orig year 3", Integer.valueOf(2005), searchResult.get(2).getYear()); } @Test public void testMovieInfoFetching() throws IOException { MoviePage movieInfo = fetcher.getMovieInfo("7467"); Assert.assertNotNull("movie info", movieInfo); Assert.assertEquals("id", "7467", movieInfo.getIdForSite()); Assert.assertEquals("url", "http://www.xpress.hu/dvd/film.asp?FILMAZ=7467", movieInfo.getUrl()); Assert.assertEquals("image url", "http://www.xpress.hu/dvd/cover/kicsi/7467.jpg", movieInfo.getImgUrl()); Assert.assertEquals("title", "Bajnokok reggelije", movieInfo.getTitle()); Assert.assertEquals("genre", "[vígjáték]", movieInfo.getGenres().toString()); Assert.assertTrue("director", movieInfo.getDirectors().contains("Alan Rudolph")); Assert.assertEquals("orig title", "Breakfast of Champions", movieInfo.getOriginalTitle()); Assert.assertEquals("orig year", Integer.valueOf(1999), movieInfo.getYear()); Assert.assertEquals("score", Integer.valueOf(73), movieInfo.getScore()); } }