package me.moodcat.database.controllers; import static org.junit.Assert.assertEquals; import me.moodcat.database.DatabaseTestModule; import me.moodcat.database.bootstrapper.BootstrapRule; import me.moodcat.database.bootstrapper.TestBootstrap; import me.moodcat.database.entities.Artist; import org.jukito.JukitoRunner; import org.jukito.UseModules; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; import com.google.inject.Inject; /** * This methods test to persist a Song * * @author Jan-Willem Gmelig Meyling */ @RunWith(JukitoRunner.class) @UseModules(DatabaseTestModule.class) public class ArtistDAOTest { private final static String ARTIST_NAME = "Fall Out Boy New"; /** * The ArtistDAO. */ @Rule @Inject public BootstrapRule bootstrapRule; // Public for JUnit, it's required. Not unused either :) /** * The ArtistDAO. */ @Inject private ArtistDAO artistDAO; /** * Persist a song with data. */ @Test public void persistArtist() { final Artist artist = new Artist(); artist.setName(ARTIST_NAME); artistDAO.persist(artist); final Artist actual = artistDAO.findByName(ARTIST_NAME); assertEquals(artist, actual); } @Test @TestBootstrap("/bootstrap/artists.json") public void canRetrieveAllLists() { assertEquals(3, artistDAO.listArtists().size()); } @Test @TestBootstrap("/bootstrap/artists.json") public void canRetrieveById() { assertEquals(2, artistDAO.findById(2).getId().intValue()); } }