Package com.pugh.sockso.web.action.browse

Source Code of com.pugh.sockso.web.action.browse.PlaylistserTest

package com.pugh.sockso.web.action.browse;

import com.pugh.sockso.db.Database;
import com.pugh.sockso.music.Playlist;
import com.pugh.sockso.tests.SocksoTestCase;
import com.pugh.sockso.tests.TestDatabase;
import com.pugh.sockso.tests.TestResponse;
import com.pugh.sockso.web.User;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import static org.easymock.EasyMock.*;

public class PlaylistserTest extends SocksoTestCase {
   
    public void testGetSitePlaylists() throws SQLException {
       
        final ResultSet rs = createNiceMock( ResultSet.class );
        expect( rs.next() ).andReturn( true );
        expect( rs.next() ).andReturn( false );
        replay( rs );
       
        final PreparedStatement st = createMock( PreparedStatement.class );
        expect( st.executeQuery() ).andReturn( rs ).times( 1 );
        st.close();
        replay( st );
       
        final Database db = createMock( Database.class );
        expect( db.prepare((String)anyObject()) ).andReturn( st ).times( 1 );
        replay( db );
       
        final Playlistser b = new Playlistser();
        b.setDatabase( db );
       
        final List<Playlist> sitePlaylists = b.getSitePlaylists();
       
        assertNotNull( sitePlaylists );
        assertEquals( 1, sitePlaylists.size() );
       
        verify( db );
        verify( st );
        verify( rs );
       
    }
   
    public void testGetUserPlaylists() throws SQLException {
       
        final ResultSet rs = createNiceMock( ResultSet.class );
        expect( rs.next() ).andReturn( true );
        expect( rs.next() ).andReturn( true );
        expect( rs.next() ).andReturn( false );
        replay( rs );
       
        final PreparedStatement st = createMock( PreparedStatement.class );
        expect( st.executeQuery() ).andReturn( rs ).times( 1 );
        st.close();
        replay( st );
       
        final Database db = createMock( Database.class );
        expect( db.prepare((String)anyObject()) ).andReturn( st ).times( 1 );
        replay( db );
       
        final Playlistser b = new Playlistser();
        b.setDatabase( db );
       
        final List<Playlist> userPlaylists = b.getUserPlaylists();
       
        assertNotNull( userPlaylists );
        assertEquals( 2, userPlaylists.size() );
       
        verify( db );
        verify( st );
        verify( rs );
       
    }
   
    public void testGetUserPlaylistsQuery() throws Exception {
       
        final Database db = new TestDatabase();
        final Playlistser b = new Playlistser();
       
        b.setDatabase( db );
        b.getUserPlaylists();
       
    }
   
    public void testGetSitePlaylistsQuery() throws Exception {
       
        final Database db = new TestDatabase();
        final Playlistser b = new Playlistser();
       
        b.setDatabase( db );
        b.getSitePlaylists();
       
    }

    public void testShowPlaylists() throws Exception {

        final TestResponse res = new TestResponse();
        final Playlistser b = new Playlistser();
        final List<Playlist> sitePlaylists = new ArrayList<Playlist>();
        final List<Playlist> userPlaylists = new ArrayList<Playlist>();
        final User user = new User( 12323, "my user" );
        final Playlist sitePlaylist = new Playlist( 1, "site Play list" );
        final Playlist userPlaylist = new Playlist( 1, "USER Play list", 1, user );

        sitePlaylists.add( sitePlaylist );
        userPlaylists.add( userPlaylist );
       
        b.setResponse( res );
        b.showPlaylists( sitePlaylists, userPlaylists );
       
        final String data = res.getOutput();

        assertTrue( data.contains(sitePlaylist.getName()) );
        assertTrue( data.contains(userPlaylist.getName()) );
        assertTrue( data.contains(user.getName()) );

    }

}
TOP

Related Classes of com.pugh.sockso.web.action.browse.PlaylistserTest

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.