/******************************************************************************* * Copyright (c) 2005, 2014 springside.github.io * * Licensed under the Apache License, Version 2.0 (the "License"); *******************************************************************************/ package org.springside.examples.showcase.repository.mybatis; import static org.assertj.core.api.Assertions.*; import java.util.List; import java.util.Map; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.ContextConfiguration; import org.springside.examples.showcase.data.UserData; import org.springside.examples.showcase.entity.User; import org.springside.modules.test.spring.SpringTransactionalTestCase; import com.google.common.collect.Maps; @DirtiesContext @ContextConfiguration(locations = { "/applicationContext.xml" }) public class UserMybatisDaoTest extends SpringTransactionalTestCase { @Autowired private UserMybatisDao userDao; @Test public void getUser() throws Exception { User user = userDao.get(1L); assertThat(user).as("User not found").isNotNull(); assertThat(user.getLoginName()).isEqualTo("admin"); } @Test public void searchUser() throws Exception { Map<String, Object> parameter = Maps.newHashMap(); parameter.put("name", "管理员"); List<User> result = userDao.search(parameter); assertThat(result).hasSize(1); assertThat(result.get(0).getLoginName()).isEqualTo("admin"); } @Test public void createAndDeleteUser() throws Exception { // create int count = countRowsInTable("ss_user"); User user = UserData.randomUser(); userDao.save(user); Long id = user.getId(); assertThat(countRowsInTable("ss_user")).isEqualTo(count + 1); User result = userDao.get(id); assertThat(result.getLoginName()).isEqualTo(user.getLoginName()); // delete userDao.delete(id); assertThat(countRowsInTable("ss_user")).isEqualTo(count); assertThat(userDao.get(id)).isNull(); } }