Package com.pugh.sockso.music

Source Code of com.pugh.sockso.music.AlbumTest

package com.pugh.sockso.music;

import com.pugh.sockso.tests.SocksoTestCase;
import com.pugh.sockso.tests.TestDatabase;

import java.util.Date;
import java.util.List;

import static junit.framework.Assert.assertEquals;

public class AlbumTest extends SocksoTestCase {
   
    private TestDatabase db;
   
    @Override
    protected void setUp() {
        db = new TestDatabase();
    }
   
    public void testGetArtist() {
       
        final int id = 123;
        final String name = "qwe rty";
        final Artist artist = new Artist.Builder().id(id).name(name).build();
        final Album album = new Album.Builder().artist(artist).build();
       
        assertEquals( artist, album.getArtist() );
       
    }
   
    public void testGetTrackCount() {

        final int trackCount = 148;
        final Album album = new Album.Builder().trackCount(trackCount).build();

        assertEquals( trackCount, album.getTrackCount() );
       
    }

    public void testGetPlayCount() {

        final int playCount = 148;
        final Album album = new Album.Builder().playCount(playCount).build();

        assertEquals( playCount, album.getPlayCount() );
       
    }

    public void testGetDateAdded() {

        final Date theDate = new Date();
        final Album album = new Album.Builder().dateAdded(theDate).build();

        assertEquals( theDate, album.getDateAdded() );
       
    }

    public void testGettingTheYearReturnsIt() {

        final String year = "2001";
        final Album album = new Album.Builder().year(year).build();

        assertEquals( "2001", album.getYear() );

    }

    public void testOnlyYearPartOfDateIsReturnedForYearIfItIncludesOtherInfo() {

        final String year = "2001-02-01";
        final Album album = new Album.Builder().year(year).build();

        assertEquals( "2001", album.getYear() );
    }

    public void testEmptyStringReturnedWhenYearIsNull() {

        final Album album = new Album.Builder().build();

        assertEquals( "", album.getYear() );
    }

    public void testFindbyartistidReturnsAllAlbumsForTheSpecifiedArtist() throws Exception {
        db.fixture( "artistsAlbumsAndTracks" );
        List<Album> albums = Album.findByArtistId( db, 1 );
        assertEquals( 2, albums.size() );
    }
   
    public void testFindbyartistidReturnsNoAlbumsOnInvalidArtistId() throws Exception {
        List<Album> albums = Album.findByArtistId( db, 999 );
        assertEquals( 0, albums.size() );
    }
   
    public void testFindReturnsAlbumRequestedById() throws Exception {
        db.fixture( "albumTracks" );
        Album album = Album.find( db, 1 );
        assertEquals( 1, album.getId() );
        assertEquals( "An Album", album.getName() );
    }
   
    public void testFindReturnsNullWhenAlbumNotFound() throws Exception {
        assertNull( Album.find( db, 1 ) );
    }
   
    public void testFindReturnsAlbumWithArtistInfo() throws Exception {
        db.fixture( "albums" );
        Album album = Album.find( db, 1 );
        assertEquals( "A Artist", album.getArtist().getName() );
    }
   
    public void testFindallReturnsAllAlbums() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, 100, 0 );
        assertEquals( 3, albums.size() );
    }
   
    public void testFindallCanBeLimited() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, 2, 0 );
        assertEquals( 2, albums.size() );
    }
   
    public void testFindallCanBeOffset() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, 3, 1 );
        assertEquals( 2, albums.size() );
    }
   
    public void testLimitOfMinusOneToFindallMeansNoLimit() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, -1, 0 );
        assertEquals( 3, albums.size() );
    }
   
    public void testFindallReturnsAlbumsLexicographically() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, -1, 0 );
        assertEquals( "Another Album", albums.get(0).getName() );
        assertEquals( "Beta Third", albums.get(1).getName() );
        assertEquals( "Zan Album", albums.get(2).getName() );
    }
   
    public void testFindallReturnsArtistsWithAlbums() throws Exception {
        db.fixture( "albums" );
        List<Album> albums = Album.findAll( db, -1, 0 );
        assertEquals( "A Artist", albums.get(0).getArtist().getName() );
    }
   
}
TOP

Related Classes of com.pugh.sockso.music.AlbumTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.