93 lines
3.1 KiB
Java
93 lines
3.1 KiB
Java
package us.xeserv.ponyapi;
|
|
|
|
import org.junit.Test;
|
|
|
|
import java.time.Instant;
|
|
import java.util.List;
|
|
|
|
import static org.junit.Assert.assertEquals;
|
|
|
|
public class JsonDecoderTest {
|
|
|
|
@Test
|
|
public void episodeTest() {
|
|
String json = "{\n"
|
|
+ "\t\"episode\":\n"
|
|
+ "\t{\n"
|
|
+ "\t\t\"name\": \"Friendship is Magic Part 1\",\n"
|
|
+ "\t\t\"air_date\": 1286735400,\n"
|
|
+ "\t\t\"season\": 1,\n"
|
|
+ "\t\t\"episode\": 1,\n"
|
|
+ "\t\t\"is_movie\": false\n"
|
|
+ "\t}\n"
|
|
+ "}";
|
|
|
|
Episode episode = JsonDecoder.fromJson(json);
|
|
assertEquals("Friendship is Magic Part 1", episode.name);
|
|
assertEquals(Instant.ofEpochSecond(1286735400), episode.airDate);
|
|
assertEquals(1, episode.season);
|
|
assertEquals(1, episode.episode);
|
|
assertEquals(false, episode.isMovie);
|
|
}
|
|
|
|
@Test
|
|
public void movieTest() {
|
|
String json = "{\n"
|
|
+ "\t\"episode\":\n"
|
|
+ "\t{\n"
|
|
+ "\t\t\"name\": \"Equestria Girls\",\n"
|
|
+ "\t\t\"air_date\": 1371340800,\n"
|
|
+ "\t\t\"season\": 99,\n"
|
|
+ "\t\t\"episode\": 1,\n"
|
|
+ "\t\t\"is_movie\": true\n"
|
|
+ "\t}\n"
|
|
+ "}";
|
|
|
|
Episode episode = JsonDecoder.fromJson(json);
|
|
assertEquals("Equestria Girls", episode.name);
|
|
assertEquals(Instant.ofEpochSecond(1371340800), episode.airDate);
|
|
assertEquals(99, episode.season);
|
|
assertEquals(1, episode.episode);
|
|
assertEquals(true, episode.isMovie);
|
|
}
|
|
|
|
@Test
|
|
public void multipleTest() {
|
|
String json = "{\n"
|
|
+ "\t\"episodes\": [\n"
|
|
+ "\t\t{\n"
|
|
+ "\t\t\t\"name\": \"Friendship is Magic Part 1\",\n"
|
|
+ "\t\t\t\"air_date\": 1286735400,\n"
|
|
+ "\t\t\t\"season\": 1,\n"
|
|
+ "\t\t\t\"episode\": 1,\n"
|
|
+ "\t\t\t\"is_movie\": false\n"
|
|
+ "\t\t},\n"
|
|
+ "\t\t{\n"
|
|
+ "\t\t\t\"name\": \"Equestria Girls\",\n"
|
|
+ "\t\t\t\"air_date\": 1371340800,\n"
|
|
+ "\t\t\t\"season\": 99,\n"
|
|
+ "\t\t\t\"episode\": 1,\n"
|
|
+ "\t\t\t\"is_movie\": true\n"
|
|
+ "\t\t}\n"
|
|
+ "\t]\n"
|
|
+ "}";
|
|
|
|
List<Episode> episodes = JsonDecoder.listFromJson(json);
|
|
assertEquals(2, episodes.size());
|
|
|
|
Episode episode1 = episodes.get(0);
|
|
assertEquals("Friendship is Magic Part 1", episode1.name);
|
|
assertEquals(Instant.ofEpochSecond(1286735400), episode1.airDate);
|
|
assertEquals(1, episode1.season);
|
|
assertEquals(1, episode1.episode);
|
|
assertEquals(false, episode1.isMovie);
|
|
|
|
Episode episode2 = episodes.get(1);
|
|
assertEquals("Equestria Girls", episode2.name);
|
|
assertEquals(Instant.ofEpochSecond(1371340800), episode2.airDate);
|
|
assertEquals(99, episode2.season);
|
|
assertEquals(1, episode2.episode);
|
|
assertEquals(true, episode2.isMovie);
|
|
}
|
|
}
|