@Test public void saveGetAndUpdateSeriesWithEpisodes() { Series serie = new Series("EpisodeSeriesTest", "estID"); List<Episode> eList = new ArrayList<>(); eList.add(new Episode("title", "path1", 1, 1)); eList.add(new Episode("title", "path2", 1, 2)); serie.setEpisodes(eList); repository.save(serie); Series serieRe = repository.findByImdbId("estID"); List<Episode> reEp = serieRe.getEpisodes(); assertThat(reEp, hasSize(2)); serieRe.getEpisodes().add(new Episode("title", "path3", 1, 3)); repository.save(serieRe); serieRe = repository.findByImdbId("estID"); reEp = serieRe.getEpisodes(); assertThat(reEp, hasSize(3)); Episode e = eRepository.findByFilePath("path1"); assertEquals("title", e.getTitle()); e = eRepository.findByFilePath("path2"); assertEquals("title", e.getTitle()); }
@Test public void itReturnsEpisodeRepresentation() { Episode episode = new Episode() { @Override public String getTitle() { return "Newest episode"; } @Override public Feed getFeed() { return new Feed() { @Override public String getId() { return "123"; } @Override public String getTitle() { return "Awesome podcast"; } }; } @Override public Audio getAudio() { return new Audio() { @Override public String getUrl() { return "audio.mp3"; } }; } }; String episodeRepresentation = format( "{ \"title\": %s, \"audioFilePath\": %s, \"feed\": { \"id\": %s, \"title\": %s } }", episode.getTitle(), episode.getAudioFilePath(), episode.getFeed().getId(), episode.getFeed().getTitle()); assertThat(episode.toString(), is(episodeRepresentation)); }
@Test public void itReturnsAudioFilePath() { Episode episode = new Episode() { @Override public String getTitle() { return "Newest episode"; } @Override public Feed getFeed() { return new Feed() { @Override public String getId() { return "123"; } @Override public String getTitle() { return "Awesome podcast"; } }; } @Override public Audio getAudio() { return new Audio() { @Override public String getUrl() { return "audio.mp3"; } }; } }; assertThat( episode.getAudioFilePath(), is(episode.getFeed().getId() + "/" + episode.getTitle() + ".mp3")); }
@Test public void findByFilePath() { Episode e = repository.findByFilePath("testEpisode1.avi"); assertThat(e.getTitle(), is("testEpisode1")); }