Package com.apress.progwt.server.dao.hibernate

Source Code of com.apress.progwt.server.dao.hibernate.UserDAOHibernateImplTest

package com.apress.progwt.server.dao.hibernate;

import java.util.List;

import org.apache.log4j.Logger;
import org.hibernate.Hibernate;

import com.apress.progwt.client.domain.Application;
import com.apress.progwt.client.domain.User;
import com.apress.progwt.server.dao.UserDAO;
import com.apress.progwt.server.domain.ServerSideUser;

public class UserDAOHibernateImplTest extends
        AbstractHibernateTransactionalTest {
    private static final Logger log = Logger
            .getLogger(UserDAOHibernateImplTest.class);

    private static final String A = "dsafd";
    private static final String B = "324234234";

    private UserDAO userDAO;

    public void setUserDAO(UserDAO userDAO) {
        this.userDAO = userDAO;
    }

    public void testGetUserByUsername() {
        String USER = "test";
        User u = userDAO.getUserByUsername(USER);
        assertEquals(USER, u.getUsername());

    }

    public void testLoadUserByUsername() {
        String USER = "test";
        ServerSideUser u = userDAO.loadUserByUsername(USER);
        assertEquals(USER, u.getUsername());

    }

    public void testSave() {

        User u = new User();
        u.setUsername(A);
        u.setPassword(A);
        u.setNickname(A);

        List<User> list = userDAO.getAllUsers();

        userDAO.save(u);

        User saved = userDAO.getUserByUsername(A);

        assertEquals(A, saved.getUsername());
        assertNotSame(0, saved.getId());
        assertFalse(saved.isSupervisor());
        assertTrue(saved.isEnabled());
        assertTrue(saved.isAccountNonExpired());

        List<User> listPost = userDAO.getAllUsers();

        assertEquals(listPost.size(), list.size() + 1);
        log.debug("User list size " + list.size());
    }

    public void testEdit() {
        String A = "dsafd";
        String B = "sdfn&S*AS";

        User u = new User();
        u.setUsername(A);
        u.setPassword(B);
        u.setNickname(A);
        List<User> list = userDAO.getAllUsers();

        userDAO.save(u);

        User saved = userDAO.getUserByUsername(A);

        assertEquals(A, saved.getUsername());
        assertNotSame(0, saved.getId());
        assertFalse(saved.isSupervisor());
        assertTrue(saved.isEnabled());
        assertTrue(saved.isAccountNonExpired());

        List<User> listPost = userDAO.getAllUsers();

        assertEquals(listPost.size(), list.size() + 1);
        log.debug("User list size " + list.size());

        // now do some edits
        //
        saved.setUsername(B);
        saved.setSupervisor(true);
        assertEquals(B, saved.getUsername());
        saved = userDAO.save(saved);
        assertEquals(B, saved.getUsername());

        for (User uuu : userDAO.getAllUsers()) {
            System.out.println("AAAAAA " + uuu);
        }
        User editted = userDAO.getUserByUsername(B);

        assertNotNull(editted);
        assertEquals(B, editted.getUsername());
        assertSame(saved.getId(), editted.getId());
        assertTrue(saved.isSupervisor());
        assertTrue(saved.isEnabled());
        assertTrue(saved.isAccountNonExpired());

    }

    public void testGetUserCount() {

        List<User> list = userDAO.getAllUsers();

        long pre = userDAO.getUserCount();

        assertEquals(pre, list.size());

        User u = new User();
        u.setUsername(A);
        u.setPassword(B);
        u.setNickname(A);
        userDAO.save(u);

        assertEquals(pre + 1, userDAO.getUserCount());

    }

    public void testGetUserByNicknameFetchAll() {
        User u = new User();
        u.setUsername(A);
        u.setPassword(A);
        u.setNickname(A);
        // List<User> list = userDAO.getAllUsers();

        userDAO.save(u);

        User saved = userDAO.getUserByNicknameFetchAll(A);

        assertTrue(Hibernate.isInitialized(saved.getSchoolRankings()));

        User test = userDAO.getUserByNicknameFetchAll("test");
        assertTrue(Hibernate.isInitialized(test.getSchoolRankings()));

        for (Application sap : test.getSchoolRankings()) {
            assertTrue(Hibernate.isInitialized(sap));
            assertTrue(Hibernate.isInitialized(sap.getSchool()));

        }

    }

}
TOP

Related Classes of com.apress.progwt.server.dao.hibernate.UserDAOHibernateImplTest

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.