mirror of https://github.com/bvn13/imdb-spider.git
52 lines
2.4 KiB
Java
52 lines
2.4 KiB
Java
package ru.bvn13.imdbspider.runner;
|
|
|
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
|
import org.junit.BeforeClass;
|
|
import org.junit.Test;
|
|
import ru.bvn13.imdbspider.ImdbSpider;
|
|
import ru.bvn13.imdbspider.exceptions.ImdbSpiderException;
|
|
import ru.bvn13.imdbspider.imdb.Movie;
|
|
import ru.bvn13.imdbspider.imdb.MovieDataType;
|
|
import ru.bvn13.imdbspider.imdb.MovieList;
|
|
|
|
import java.util.EnumSet;
|
|
|
|
import static org.junit.Assert.assertEquals;
|
|
import static org.junit.Assert.assertTrue;
|
|
|
|
|
|
public class MovieSearchTest
|
|
{
|
|
private static ImdbSpider spider;
|
|
|
|
@BeforeClass
|
|
public static void initClass() {
|
|
spider = ImdbSpider.withApi_1_0();
|
|
}
|
|
|
|
@Test
|
|
public void testSearchTerminator() throws ImdbSpiderException {
|
|
MovieList result = spider.searchMovieByTitle("Терминатор", 5, EnumSet.of(MovieDataType.ID, MovieDataType.TITLE, MovieDataType.ORIGINAL_TITLE, MovieDataType.YEAR));
|
|
assertTrue(result.getMovies().size() > 0);
|
|
Movie movie = result.getMovies().get(0);
|
|
assertTrue(movie.isDataTypeRetrieved(MovieDataType.ID));
|
|
assertTrue(movie.isDataTypeRetrieved(MovieDataType.TITLE));
|
|
assertTrue(movie.isDataTypeRetrieved(MovieDataType.ORIGINAL_TITLE));
|
|
assertTrue(movie.isDataTypeRetrieved(MovieDataType.YEAR));
|
|
assertEquals("0088247", movie.getId());
|
|
assertEquals("The Terminator", movie.getOriginalTitle());
|
|
assertEquals(Integer.valueOf(1984), movie.getYear());
|
|
}
|
|
|
|
@Test
|
|
public void testSearchTerminatorReturnsJson() throws ImdbSpiderException, JsonProcessingException {
|
|
MovieList result = spider.searchMovieByTitle("Терминатор", 5, EnumSet.of(MovieDataType.ID, MovieDataType.TITLE, MovieDataType.ORIGINAL_TITLE, MovieDataType.YEAR));
|
|
|
|
ObjectMapper mapper = new ObjectMapper();
|
|
String json = mapper.writeValueAsString(result);
|
|
//System.out.println("JSON = " + json);
|
|
assertEquals("{\"retrievedDataTypes\":[\"ELEMENTS\"],\"id\":null,\"url\":\"https://www.imdb.com/find?ref_=nv_sr_fn&q=%D0%A2%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%B0%D1%82%D0%BE%D1%80&s=tt\",\"movies\":[{\"retrievedDataTypes\":[\"ID\",\"TITLE\",\"ORIGINAL_TITLE\",\"YEAR\"],\"id\":\"0088247\",\"url\":\"https://www.imdb.com/title/tt0088247/?ref_=fn_tt_tt_1\",\"title\":\"Терминатор (1984)\",\"originalTitle\":\"The Terminator\",\"year\":1984,\"akas\":{}}]}", json);
|
|
}
|
|
}
|