package org.javaee7.jpa.index; import static java.nio.charset.Charset.defaultCharset; import static java.nio.file.Files.exists; import static org.jboss.shrinkwrap.api.ShrinkWrap.create; import static org.junit.Assert.assertTrue; import java.io.BufferedReader; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import org.jboss.arquillian.container.test.api.Deployment; import org.jboss.arquillian.junit.Arquillian; import org.jboss.shrinkwrap.api.spec.WebArchive; import org.junit.Test; import org.junit.runner.RunWith; /** * @author Roberto Cortez */ @RunWith(Arquillian.class) public class SchemaGenIndexTest { @Deployment public static WebArchive createDeployment() { WebArchive war = create(WebArchive.class) .addPackage("org.javaee7.jpa.index") .addAsResource("META-INF/persistence.xml"); System.out.println(war.toString(true)); return war; } @Test public void testSchemaGenIndex() throws Exception { Path create = Paths.get("/tmp/create.sql"); assertTrue(exists(create)); Path drop = Paths.get("/tmp/drop.sql"); assertTrue(exists(create)); String line; BufferedReader reader = Files.newBufferedReader(create, defaultCharset()); boolean createGenerated = false; boolean createIndex = false; while ((line = reader.readLine()) != null) { if (line.toLowerCase().contains("create table employee_schema_gen_index")) { createGenerated = true; } if (line.toLowerCase().contains("create index")) { createIndex = true; } } reader = Files.newBufferedReader(drop, defaultCharset()); boolean dropGenerated = false; while ((line = reader.readLine()) != null) { if (line.toLowerCase().contains("drop table employee_schema_gen_index")) { dropGenerated = true; break; } } assertTrue(createGenerated); assertTrue(createIndex); assertTrue(dropGenerated); } }