package siena.base.test;
import java.util.ArrayList;
import java.util.List;
import junit.framework.TestCase;
import siena.PersistenceManager;
import siena.PersistenceManagerFactory;
public abstract class AbstractTest extends TestCase {
protected PersistenceManager pm;
List<Class<?>> classes = new ArrayList<Class<?>>();
public abstract void init();
public abstract void createClasses(List<Class<?>> classes);
public abstract PersistenceManager createPersistenceManager(List<Class<?>> classes) throws Exception;
public abstract void postInit();
public abstract boolean supportsAutoincrement();
public abstract boolean supportsMultipleKeys();
public abstract boolean supportsDeleteException();
public abstract boolean supportsSearchStart();
public abstract boolean supportsSearchEnd();
public abstract boolean supportsTransaction();
public abstract boolean supportsListStore();
@Override
protected void setUp() throws Exception {
super.setUp();
init();
createClasses(classes);
pm = createPersistenceManager(classes);
PersistenceManagerFactory.install(pm, classes);
postInit();
}
}