📄 testsimpleeventdao.java
字号:
package com.manning.hq.ch07;
import junit.framework.TestCase;
import org.hibernate.HibernateException;
import org.hibernate.ObjectNotFoundException;
import org.hibernate.Session;
import java.util.List;
/**
*
*/
public class TestSimpleEventDao extends TestCase {
private SimpleEventDao eventDao;
private Event event;
public TestSimpleEventDao() {
}
protected void setUp() throws Exception {
super.setUp();
eventDao = new SimpleEventDao();
event = new Event();
}
protected void tearDown() throws Exception {
super.tearDown();
if (event != null && event.getId() != null) {
eventDao.delete(event);
}
}
/**
* Verifies that create() inserts a new Event into the database.
* @throws Exception
*/
public void testCreate() throws Exception {
Session session = HibernateFactory.openSession();
Event event2 = null;
event.setName("Create an Event");
eventDao.create(event);
event2 = (Event) session.load(Event.class, event.getId());
assertEquals("Check names", event.getName(), event2.getName());
}
/**
* Verifies the delete() removes an Event from the database.
* @throws Exception
*/
public void testDelete() throws Exception {
event.setName("Delete an Event");
try {
eventDao.create(event);
eventDao.delete(event);
Session session = HibernateFactory.openSession();
session.load(Event.class, event.getId());
fail("Delete should remove the event from the database.");
} catch (ObjectNotFoundException expected) {
// expected
}
event = null;
}
/**
* Verifies that find() returns an Event by its primary key.
* @throws Exception
*/
public void testFind() throws Exception {
event.setName("Find an Event");
eventDao.create(event);
Event foundEvent = eventDao.find(event.getId());
assertEquals("Check names", event.getName(), foundEvent.getName());
}
/**
* Verifies that findAll() returns all Events in the database.
* @throws HibernateException
*/
public void testFindAll() throws Exception {
SimpleEventDao eventDao = new SimpleEventDao();
Event event1 = new Event();
Event event2 = new Event();
event1.setName("Find all Events 1");
event2.setName("Find all Events 2");
try {
eventDao.create(event1);
eventDao.create(event2);
List events = eventDao.findAll();
assertTrue("Should find all the events", events.size() >= 2);
} finally {
eventDao.delete(event1);
eventDao.delete(event2);
}
}
/**
* Verifys that update correctly updates a detached Event.
*
* @throws HibernateException
*/
public void testUpdate() throws Exception {
event.setName("Update an Event");
eventDao.create(event);
Event foundEvent = eventDao.find(event.getId());
foundEvent.setDuration(30);
eventDao.update(foundEvent);
event = eventDao.find(event.getId());
assertEquals("Check names", foundEvent.getName(), event.getName());
assertEquals("Check durations", 30, event.getDuration());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -