Skip to content

Instantly share code, notes, and snippets.

@nboire
Created May 28, 2012 16:15
Show Gist options
  • Save nboire/2819920 to your computer and use it in GitHub Desktop.
Save nboire/2819920 to your computer and use it in GitHub Desktop.
Playframework play2 EbeanTest Class to Clean Database before each test
package app;
import com.avaje.ebean.Ebean;
import com.avaje.ebean.EbeanServer;
import com.avaje.ebean.config.ServerConfig;
import com.avaje.ebean.config.dbplatform.MySqlPlatform;
import com.avaje.ebeaninternal.api.SpiEbeanServer;
import com.avaje.ebeaninternal.server.ddl.DdlGenerator;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import play.test.FakeApplication;
import play.test.Helpers;
import java.io.IOException;
public class EbeanTest {
public static FakeApplication app;
@BeforeClass
public static void startApp() throws IOException {
app = Helpers.fakeApplication();
Helpers.start(app);
}
@AfterClass
public static void stopApp() {
Helpers.stop(app);
}
@Before
public void dropCreateDb() throws IOException {
String serverName = "default";
EbeanServer server = Ebean.getServer(serverName);
ServerConfig config = new ServerConfig();
DdlGenerator ddl = new DdlGenerator((SpiEbeanServer) server, new MySqlPlatform(), config);
// Drop
ddl.runScript(false, ddl.generateDropDdl());
// Create
ddl.runScript(false, ddl.generateCreateDdl());
}
}
@janetruluck
Copy link

For others looking this was solved on SO http://stackoverflow.com/q/20623040/1359888

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment