@Test public void createAndValidateArtistInfos() throws ApplicationException { deleteArtistInfos(); List<ArtistInfo> artistInfos = new ArrayList<>(); artistInfos.add(aiAbba); artistInfos.add(aiCher); dao.createArtistInfo(artistInfos); ArtistInfo dbAbba = dao.getArtistInfo(aiAbba.getArtist()); ArtistInfo dbCher = dao.getArtistInfo(aiCher.getArtist()); Assert.assertEquals(aiAbba, dbAbba); Assert.assertEquals(aiCher, dbCher); }
@Test public void biographyAndImageUrlAreReturnedAsInfo() throws ApplicationException { deleteArtistInfos(); int abbaId = musicDao.getArtistId(aiAbba.getArtist()); dao.createArtistInfo(Arrays.asList(aiAbba)); ArtistInfo dbAbba = dao.getArtistInfo(abbaId); Assert.assertEquals(ABBA_IMAGE_URL, dbAbba.getLargeImageUrl()); Assert.assertEquals(ABBA_BIO_SUMMARY, dbAbba.getBioSummary()); }
@Test public void bioSummaryCanBeUpdated() { deleteArtistInfos(); int abbaId = musicDao.getArtistId(aiAbba.getArtist()); String biography = "new ABBA biography"; dao.createArtistInfo(Arrays.asList(aiAbba)); dao.setBioSummary(abbaId, biography); ArtistInfo dbAbba = dao.getArtistInfo(abbaId); Assert.assertEquals(biography, dbAbba.getBioSummary()); }
@Before public void loadFunctionDependency() throws ApplicationException { PostgreSQLUtil.loadFunction(dao, UPDATE_ARTISTINFO); aiAbba = new ArtistInfoParserImpl(new ResourceUtil(AI_ABBA_FILE).getInputStream()).getArtistInfo(); aiCher = new ArtistInfoParserImpl(new ResourceUtil(AI_CHER_FILE).getInputStream()).getArtistInfo(); aiTina = new ArtistInfoParserImpl(new ResourceUtil(AI_TINA_FILE).getInputStream()).getArtistInfo(); deleteArtists(); // re-create artists for (ArtistInfo ai : new ArtistInfo[] {aiAbba, aiCher, aiTina}) { musicDao.getArtistId(ai.getArtist()); } }
@Test public void createAndValidateUpdatedArtistInfos() throws ApplicationException { deleteArtistInfos(); String newBio = "Abba was a pop group."; String newContent = "Abba was a pop group. They sold many records."; dao.createArtistInfo(Arrays.asList(aiAbba, aiTina)); aiAbba.setBioSummary(newBio); aiAbba.setBioContent(newContent); dao.createArtistInfo(Arrays.asList(aiAbba, aiCher)); ArtistInfo dbAbba = dao.getArtistInfo(aiAbba.getArtist()); Assert.assertEquals(newBio, dbAbba.getBioSummary()); Assert.assertEquals(newContent, dbAbba.getBioContent()); }