Skip to content

Commit 1fb8e0d

Browse files
committed
SchemaGenIndexTest updated to take lazy init providers into account
1 parent a570b3a commit 1fb8e0d

3 files changed

Lines changed: 45 additions & 17 deletions

File tree

jpa/schema-gen-index/src/main/java/org/javaee7/jpa/index/Employee.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package org.javaee7.jpa.index;
22

3+
import static javax.persistence.GenerationType.AUTO;
4+
35
import java.io.Serializable;
6+
47
import javax.persistence.Column;
58
import javax.persistence.Entity;
69
import javax.persistence.GeneratedValue;
7-
import javax.persistence.GenerationType;
810
import javax.persistence.Id;
911
import javax.persistence.Index;
10-
import javax.persistence.NamedQueries;
11-
import javax.persistence.NamedQuery;
1212
import javax.persistence.Table;
1313

1414
/**
@@ -17,9 +17,11 @@
1717
@Entity
1818
@Table(name = "EMPLOYEE_SCHEMA_GEN_INDEX", indexes = @Index(columnList = "NAME"))
1919
public class Employee implements Serializable {
20+
2021
private static final long serialVersionUID = 1L;
22+
2123
@Id
22-
@GeneratedValue(strategy = GenerationType.AUTO)
24+
@GeneratedValue(strategy = AUTO)
2325
private int id;
2426

2527
@Column(length = 40)
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
package org.javaee7.jpa.index;
2+
3+
import javax.annotation.PostConstruct;
4+
import javax.ejb.Singleton;
5+
import javax.ejb.Startup;
6+
import javax.persistence.EntityManager;
7+
import javax.persistence.PersistenceContext;
8+
9+
@Singleton
10+
@Startup
11+
public class StartupBean {
12+
13+
// Some providers like EclipseLink on Payara initialize JPA more lazily
14+
// and need this to be able to spring into action and generate the scripts
15+
@PersistenceContext
16+
private EntityManager entityManager;
17+
18+
@PostConstruct
19+
public void init() {
20+
System.out.println("Hello, world");
21+
}
22+
23+
}

jpa/schema-gen-index/src/test/java/org/javaee7/jpa/index/SchemaGenIndexTest.java

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,20 @@
11
package org.javaee7.jpa.index;
22

3-
import org.jboss.arquillian.container.test.api.Deployment;
4-
import org.jboss.arquillian.junit.Arquillian;
5-
import org.jboss.shrinkwrap.api.ShrinkWrap;
6-
import org.jboss.shrinkwrap.api.spec.WebArchive;
7-
import org.junit.Test;
8-
import org.junit.runner.RunWith;
3+
import static java.nio.charset.Charset.defaultCharset;
4+
import static java.nio.file.Files.exists;
5+
import static org.jboss.shrinkwrap.api.ShrinkWrap.create;
6+
import static org.junit.Assert.assertTrue;
97

108
import java.io.BufferedReader;
11-
import java.nio.charset.Charset;
129
import java.nio.file.Files;
1310
import java.nio.file.Path;
1411
import java.nio.file.Paths;
1512

16-
import static org.junit.Assert.assertTrue;
13+
import org.jboss.arquillian.container.test.api.Deployment;
14+
import org.jboss.arquillian.junit.Arquillian;
15+
import org.jboss.shrinkwrap.api.spec.WebArchive;
16+
import org.junit.Test;
17+
import org.junit.runner.RunWith;
1718

1819
/**
1920
* @author Roberto Cortez
@@ -22,23 +23,25 @@
2223
public class SchemaGenIndexTest {
2324
@Deployment
2425
public static WebArchive createDeployment() {
25-
WebArchive war = ShrinkWrap.create(WebArchive.class)
26+
WebArchive war = create(WebArchive.class)
2627
.addPackage("org.javaee7.jpa.index")
2728
.addAsResource("META-INF/persistence.xml");
29+
2830
System.out.println(war.toString(true));
31+
2932
return war;
3033
}
3134

3235
@Test
3336
public void testSchemaGenIndex() throws Exception {
3437
Path create = Paths.get("/tmp/create.sql");
35-
assertTrue(Files.exists(create));
38+
assertTrue(exists(create));
3639

3740
Path drop = Paths.get("/tmp/drop.sql");
38-
assertTrue(Files.exists(create));
41+
assertTrue(exists(create));
3942

4043
String line;
41-
BufferedReader reader = Files.newBufferedReader(create, Charset.defaultCharset());
44+
BufferedReader reader = Files.newBufferedReader(create, defaultCharset());
4245
boolean createGenerated = false;
4346
boolean createIndex = false;
4447
while ((line = reader.readLine()) != null) {
@@ -51,7 +54,7 @@ public void testSchemaGenIndex() throws Exception {
5154
}
5255
}
5356

54-
reader = Files.newBufferedReader(drop, Charset.defaultCharset());
57+
reader = Files.newBufferedReader(drop, defaultCharset());
5558
boolean dropGenerated = false;
5659
while ((line = reader.readLine()) != null) {
5760
if (line.toLowerCase().contains("drop table employee_schema_gen_index")) {

0 commit comments

Comments
 (0)