Search in sources :

Example 16 with Track

use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.

the class TrackPlayCountTest method validateSetters.

@Test
public void validateSetters() {
    String artistName = "madonna";
    String trackName = "material girl";
    int playCount = 30;
    TrackPlayCount tpc = new TrackPlayCount();
    tpc.setTrack(new Track(artistName, trackName));
    tpc.setPlayCount(playCount);
    Assert.assertEquals(tpc.getTrack(), new Track(artistName, trackName));
    Assert.assertEquals(tpc.getPlayCount(), playCount);
}
Also used : Track(com.github.hakko.musiccabinet.domain.model.music.Track) Test(org.junit.Test)

Example 17 with Track

use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.

the class JdbcMusicBrainzAlbumDaoTest method findsAlbumsMissingFromLibraryWithRecentlyPlayedFilter.

@Test
public void findsAlbumsMissingFromLibraryWithRecentlyPlayedFilter() {
    List<MBAlbum> albums = albumDao.getMissingAlbums(null, null, USER, 10, 0);
    assertEquals(0, albums.size());
    LastFmUser lastFmUser = new LastFmUser(USER);
    lastFmDao.createOrUpdateLastFmUser(lastFmUser);
    submitFile(additionDao, getFile(artist.getName(), UNKNOWN, UNKNOWN));
    Track track = browserDao.getTracks(browserDao.getRandomTrackIds(1)).get(0);
    playCountDao.addPlayCount(lastFmUser, track);
    albums = albumDao.getMissingAlbums(null, null, USER, 10, 0);
    assertEquals(2, albums.size());
}
Also used : LastFmUser(com.github.hakko.musiccabinet.domain.model.library.LastFmUser) MBAlbum(com.github.hakko.musiccabinet.domain.model.music.MBAlbum) Track(com.github.hakko.musiccabinet.domain.model.music.Track) Test(org.junit.Test)

Example 18 with Track

use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.

the class JdbcMusicDaoTest method trackIdCanBeUsedToFetchTrack.

@Test
public void trackIdCanBeUsedToFetchTrack() {
    final String artistName = "Death Grips";
    final String trackName = "I've Seen Footage";
    int trackId = dao.getTrackId(artistName, trackName);
    Track track = dao.getTrack(trackId);
    Assert.assertEquals(artistName, track.getArtist().getName());
    Assert.assertEquals(trackName, track.getName());
}
Also used : Track(com.github.hakko.musiccabinet.domain.model.music.Track) Test(org.junit.Test)

Example 19 with Track

use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.

the class JdbcPlayCountDaoTest method prepareTestData.

@Before
public void prepareTestData() throws ApplicationException {
    dao.getJdbcTemplate().execute("truncate music.lastfmuser cascade");
    dao.getJdbcTemplate().execute("truncate library.file cascade");
    dao.getJdbcTemplate().execute("truncate music.artist cascade");
    user1 = new LastFmUser(username1 = "user1");
    user2 = new LastFmUser(username2 = "user2");
    lastFmDao.createOrUpdateLastFmUser(user1);
    lastFmDao.createOrUpdateLastFmUser(user2);
    File file1 = UnittestLibraryUtil.getFile("artist1", "album1", "title1");
    File file2 = UnittestLibraryUtil.getFile("artist1", "album1", "title2");
    File file3 = UnittestLibraryUtil.getFile("artist2", "album2", "title3");
    submitFile(additionDao, Arrays.asList(file1, file2, file3));
    List<Artist> artists = browserDao.getArtists();
    assertEquals(2, artists.size());
    artist1 = artists.get(0);
    artist2 = artists.get(1);
    List<Album> albums1 = browserDao.getAlbums(artist1.getId(), true);
    assertEquals(1, albums1.size());
    album1 = albums1.get(0);
    List<Album> albums2 = browserDao.getAlbums(artist2.getId(), true);
    assertEquals(1, albums2.size());
    album2 = albums2.get(0);
    List<Track> tracks1 = browserDao.getTracks(album1.getTrackIds());
    Collections.sort(tracks1, trackComparator);
    assertEquals(2, tracks1.size());
    track1a = tracks1.get(0);
    track1b = tracks1.get(1);
    List<Track> tracks2 = browserDao.getTracks(album2.getTrackIds());
    assertEquals(1, tracks2.size());
    track2 = tracks2.get(0);
}
Also used : Artist(com.github.hakko.musiccabinet.domain.model.music.Artist) LastFmUser(com.github.hakko.musiccabinet.domain.model.library.LastFmUser) Album(com.github.hakko.musiccabinet.domain.model.music.Album) File(com.github.hakko.musiccabinet.domain.model.library.File) UnittestLibraryUtil.submitFile(com.github.hakko.musiccabinet.util.UnittestLibraryUtil.submitFile) Track(com.github.hakko.musiccabinet.domain.model.music.Track) Before(org.junit.Before)

Example 20 with Track

use of com.github.hakko.musiccabinet.domain.model.music.Track in project musiccabinet by hakko.

the class JdbcPlaylistGeneratorDaoTest method prepareTestdataForArtist.

private int prepareTestdataForArtist() throws ApplicationException {
    ArtistSimilarityParser asParser = new ArtistSimilarityParserImpl(new ResourceUtil(CHER_SIMILAR_ARTISTS).getInputStream());
    artistRelationDao.createArtistRelations(asParser.getArtist(), asParser.getArtistRelations());
    ArtistTopTracksParser attParser = new ArtistTopTracksParserImpl(new ResourceUtil(CHER_TOP_TRACKS).getInputStream());
    artistTopTracksDao.createTopTracks(attParser.getArtist(), attParser.getTopTracks());
    List<File> files = new ArrayList<>();
    for (Track topTrack : attParser.getTopTracks()) {
        files.add(UnittestLibraryUtil.getFile(topTrack));
    }
    UnittestLibraryUtil.submitFile(additionDao, files);
    int artistId = musicDao.getArtistId(asParser.getArtist());
    playlistGeneratorDao.updateSearchIndex();
    return artistId;
}
Also used : ResourceUtil(com.github.hakko.musiccabinet.util.ResourceUtil) ArtistSimilarityParser(com.github.hakko.musiccabinet.parser.lastfm.ArtistSimilarityParser) ArtistSimilarityParserImpl(com.github.hakko.musiccabinet.parser.lastfm.ArtistSimilarityParserImpl) ArrayList(java.util.ArrayList) ArtistTopTracksParser(com.github.hakko.musiccabinet.parser.lastfm.ArtistTopTracksParser) ArtistTopTracksParserImpl(com.github.hakko.musiccabinet.parser.lastfm.ArtistTopTracksParserImpl) UnittestLibraryUtil.getFile(com.github.hakko.musiccabinet.util.UnittestLibraryUtil.getFile) File(com.github.hakko.musiccabinet.domain.model.library.File) Track(com.github.hakko.musiccabinet.domain.model.music.Track)

Aggregations

Track (com.github.hakko.musiccabinet.domain.model.music.Track)40 Test (org.junit.Test)23 LastFmUser (com.github.hakko.musiccabinet.domain.model.library.LastFmUser)9 Artist (com.github.hakko.musiccabinet.domain.model.music.Artist)9 UserStarredTrack (com.github.hakko.musiccabinet.domain.model.aggr.UserStarredTrack)6 File (com.github.hakko.musiccabinet.domain.model.library.File)5 Album (com.github.hakko.musiccabinet.domain.model.music.Album)5 ResourceUtil (com.github.hakko.musiccabinet.util.ResourceUtil)5 UserLovedTracks (com.github.hakko.musiccabinet.domain.model.aggr.UserLovedTracks)4 WebserviceInvocation (com.github.hakko.musiccabinet.domain.model.library.WebserviceInvocation)4 ApplicationException (com.github.hakko.musiccabinet.exception.ApplicationException)4 UnittestLibraryUtil.getFile (com.github.hakko.musiccabinet.util.UnittestLibraryUtil.getFile)4 ArrayList (java.util.ArrayList)4 NameValuePair (org.apache.http.NameValuePair)4 Before (org.junit.Before)4 MetaData (com.github.hakko.musiccabinet.domain.model.library.MetaData)3 Calltype (com.github.hakko.musiccabinet.domain.model.library.WebserviceInvocation.Calltype)3 UserLovedTracksParserImpl (com.github.hakko.musiccabinet.parser.lastfm.UserLovedTracksParserImpl)3 UnittestLibraryUtil.submitFile (com.github.hakko.musiccabinet.util.UnittestLibraryUtil.submitFile)3 WSResponse (com.github.hakko.musiccabinet.ws.lastfm.WSResponse)3