}
public void testEvents() throws Exception
{
Mock mockListener = new Mock(PersistenceStoreEventListener.class);
mockListener.expects(new InvokeOnceMatcher()).method("afterMakePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("beforeMakePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("afterDeletePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("beforeDeletePersistent").isVoid();
PersistenceStoreEventListener listener =(PersistenceStoreEventListener) mockListener.proxy();
store.addEventListener(listener);
store.getTransaction().begin();
A a = new A();
a.setName("a1");
store.makePersistent(a);
store.getTransaction().commit();
store.getTransaction().begin();
store.deletePersistent(a);
store.getTransaction().commit();
mockListener.verify();
mockListener.reset();
mockListener.expects(new InvokeOnceMatcher()).method("afterMakePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("beforeMakePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("afterDeletePersistent").isVoid();
mockListener.expects(new InvokeOnceMatcher()).method("beforeDeletePersistent").isVoid();
PersistenceStore store2 = new PBStore("jetspeed");
store2.getTransaction().begin();
A a2 = new A();