Package com.github.dactiv.showcase.test.manager.account

Source Code of com.github.dactiv.showcase.test.manager.account.TestUserManager

package com.github.dactiv.showcase.test.manager.account;

import static org.junit.Assert.assertEquals;

import java.util.List;

import com.github.dactiv.orm.core.Page;
import com.github.dactiv.orm.core.PageRequest;
import com.github.dactiv.orm.core.PropertyFilter;
import com.github.dactiv.orm.core.PropertyFilters;
import com.github.dactiv.showcase.common.enumeration.entity.State;
import com.github.dactiv.showcase.entity.account.User;
import com.github.dactiv.showcase.service.account.AccountManager;
import com.github.dactiv.showcase.test.manager.ManagerTestCaseSupport;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;

import com.google.common.collect.Lists;

/**
* 测试用户管理所有方法
*
* @author maurice
*
*/
public class TestUserManager extends ManagerTestCaseSupport{

  @Autowired
  private AccountManager accountManager;

  @Test
  @Transactional(readOnly=true)
  public void testGetUser() {
    User user = accountManager.getUser("SJDK3849CKMS3849DJCK2039ZMSK0001");
    assertEquals(user.getUsername(),"maurice");
  }

  @Test
  public void testSearchUserPage() {
    PageRequest request = new PageRequest();
   
    List<PropertyFilter> filters = Lists.newArrayList(
        PropertyFilters.get("LIKES_username", "es"),
        PropertyFilters.get("EQI_state", "1")
    );
   
    Page<User> page = accountManager.searchUserPage(request, filters);
   
    assertEquals(page.getTotalItems(), 4);
    assertEquals(page.getTotalPages(), 1);
  }

  @Test
  public void testInsertUser() {
    User entity = new User();
   
    entity.setEmail("test@test.com");
    entity.setPassword("123456");
    entity.setRealname("一个测试用户");
    entity.setUsername("test_maurice");
    entity.setState(State.Enable.getValue());
   
    int before = countRowsInTable("tb_user");
    accountManager.insertUser(entity);
    int after = countRowsInTable("tb_user");
   
    assertEquals(before + 1, after);
  }

  @Test
  @Transactional
  public void testUpdateUser() {
    User entity = accountManager.getUser("SJDK3849CKMS3849DJCK2039ZMSK0001");
    entity.setUsername("modify");
    entity.setPassword("123456");
    entity.setRealname("maurice");
   
    accountManager.updateUser(entity);
   
    getSessionFactory().getCurrentSession().flush();
    getSessionFactory().getCurrentSession().clear();
   
    entity = accountManager.getUser("SJDK3849CKMS3849DJCK2039ZMSK0001");
   
    assertEquals(entity.getUsername(), "maurice");
    assertEquals(entity.getPassword(), "e10adc3949ba59abbe56e057f20f883e");
    assertEquals(entity.getRealname(), "maurice");
  }

  @Test
  public void testIsUsernameUnique() {
    assertEquals(accountManager.isUsernameUnique("maurice"), false);
  }

  @Test
  public void testDeleteUsers() {
    int before = countRowsInTable("tb_user");
    accountManager.deleteUsers(Lists.newArrayList("SJDK3849CKMS3849DJCK2039ZMSK0001"));
    int after = countRowsInTable("tb_user");
   
    assertEquals(before - 1, after);
  }

  @Test
  public void testGetUserByUsername() {
    User entity = accountManager.getUserByUsername("maurice");
    assertEquals(entity.getUsername(), "maurice");
    assertEquals(entity.getRealname(), "maurice.chen");
  }
 
}
TOP

Related Classes of com.github.dactiv.showcase.test.manager.account.TestUserManager

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.