Я использую Hibernate 3.5.5.Final и JPA2
Как создать тестовый сценарий для проверки работоспособности блокировки гибернации?
Я написал это, но кажется, что тест не проходит в текущей версии Hibernate (работает хорошо в предыдущей версии)
@Test(expected=OptimisticLockException.class)
public void testLock() {
EntityManager em = getEntityManager();
Foo foo1 = fooDAO.findById(1);
em.lock(foo1, LockModeType.WRITE);
foo1.setCode("code3");
em.flush();
}
EDIT:
@ Паскаль: это то, что вы имеете в виду во втором случае?
@Test(expected=OptimisticLockException.class)
public void testLock() {
EntityManager em = getEntityManager();
em.getTransaction().begin();
Foo foo1 = fooDAO.findById(1);
em.lock(foo1, LockModeType.WRITE);
fooDAO.createHibernateQuery("update Foo set version=version+1 where id = 1");
foo1.setCode("code3");
em.flush();
}
Спасибо