You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openjpa.apache.org by st...@apache.org on 2013/10/25 09:13:13 UTC
svn commit: r1535648 - in /openjpa/trunk: ./
openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java
openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java
Author: struberg
Date: Fri Oct 25 07:13:13 2013
New Revision: 1535648
URL: http://svn.apache.org/r1535648
Log:
OPENJPA-2444 fix default orm.xml location for ReverseMappingTool
I also fixed the badly formatted and partly broken TestUseSchemaElement.
Modified:
openjpa/trunk/ (props changed)
openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java
openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java
Propchange: openjpa/trunk/
------------------------------------------------------------------------------
Merged /openjpa/branches/2.3.x:r1535560
Modified: openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java?rev=1535648&r1=1535647&r2=1535648&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java (original)
+++ openjpa/trunk/openjpa-persistence-jdbc/src/test/java/org/apache/openjpa/persistence/jdbc/meta/TestUseSchemaElement.java Fri Oct 25 07:13:13 2013
@@ -20,15 +20,11 @@ package org.apache.openjpa.persistence.j
import java.io.File;
import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.sql.SQLException;
import java.util.Scanner;
import javax.persistence.EntityManager;
import javax.persistence.Query;
-import junit.textui.TestRunner;
-
import org.apache.openjpa.jdbc.conf.JDBCConfiguration;
import org.apache.openjpa.jdbc.meta.ReverseMappingTool;
import org.apache.openjpa.lib.util.Files;
@@ -38,112 +34,112 @@ import org.apache.openjpa.persistence.te
/**
* Tests the added useSchemaElement functionality of the
* ReverseMappingTool and CodeGenerator classes.
- *
+ *
* @author Austin Dorenkamp (ajdorenk)
*/
public class TestUseSchemaElement extends /*TestCase*/ SingleEMFTestCase {
-
- public void setUp() throws Exception {
- super.setUp();
- File f = new File("./orm.xml");
-
- // Make sure to clean up orm.xml from a prior run
- if (f.exists()) {
- assertTrue(f.delete());
- }
- setSupportedDatabases(org.apache.openjpa.jdbc.sql.DerbyDictionary.class);
- }
-
- @Override
- public String getPersistenceUnitName(){
- return "rev-mapping-pu";
- }
-
- public void testGettersAndSetters() {
-
- JDBCConfiguration conf = (JDBCConfiguration) ((OpenJPAEntityManagerFactory) emf).getConfiguration();
-
- EntityManager em = emf.createEntityManager();
-
- em.getTransaction().begin();
-
- Query q = em.createNativeQuery("CREATE TABLE USCHEMA.USCHANTBL (ID INTEGER PRIMARY KEY)");
- try {
- q.executeUpdate();
- em.getTransaction().commit();
- } catch (Throwable t) {
- em.getTransaction().rollback();
- System.out.println(t.toString());
- }
-
- try {
- ReverseMappingTool.Flags flags = new ReverseMappingTool.Flags();
- flags.metaDataLevel = "package";
- flags.generateAnnotations = true;
- flags.accessType = "property";
- flags.nullableAsObject = true;
- flags.useSchemaName = false;
- flags.useSchemaElement = false;
- flags.packageName = "";
- flags.directory = Files.getFile("./target", null);
- ReverseMappingTool.run(conf, new String[0], flags, null);
- } catch (IOException e) {
- e.printStackTrace();
- } catch (SQLException e) {
- e.printStackTrace();
- } catch (Throwable t) {
- t.printStackTrace();
- }
-
- /* Now that the tool has been run, we will test it by reading the generated files */
-
- // This tests the removal of the schema annotation in the Uschantbl.java file
- File uschantbl = new File("./target/Uschantbl.java");
- Scanner inFile = new Scanner("");
- String currentLine;
- try {
- inFile = new Scanner(uschantbl);
- } catch (FileNotFoundException e) {
- fail("Uschantbl.java not generated in ./target by ReverseMappingTool");
- }
- while(inFile.hasNextLine())
- {
- currentLine = inFile.nextLine();
- if((currentLine.length()) > 0 && (currentLine.charAt(0) != '@'))
- {
- continue;
- }
-
- if(currentLine.contains("Table(schema="))
- {
- fail("Uschantbl.java still contains schema name");
- }
- }
- inFile.close();
- // Delete file to clean up workspace
- assertTrue(uschantbl.delete());
-
- // This tests the removal of the schema name from the orm.xml file
- File orm = new File("./orm.xml");
- try {
- inFile = new Scanner(orm);
- } catch (FileNotFoundException e) {
- fail("Orm.xml not generated in root directory by ReverseMappingTool");
- }
- while(inFile.hasNextLine())
- {
- if(inFile.nextLine().contains("<table schema="))
- {
- fail("Orm.xml still contains schema name");
- }
- }
- inFile.close();
- // Delete file to clean up workspace. Also, test will break with
- // org.apache.openjpa.util.UserException if orm.xml exists prior to running
-// assertTrue(orm.delete());
- }
-
- public static void main(String[] args) {
- TestRunner.run(TestUseSchemaElement.class);
- }
+
+ public void setUp() throws Exception {
+ super.setUp();
+ File f = new File("./orm.xml");
+
+ // Make sure to clean up orm.xml from a prior run
+ if (f.exists()) {
+ assertTrue(f.delete());
+ }
+ setSupportedDatabases(org.apache.openjpa.jdbc.sql.DerbyDictionary.class);
+ }
+
+ @Override
+ public String getPersistenceUnitName(){
+ return "rev-mapping-pu";
+ }
+
+ public void testGettersAndSetters() throws Exception {
+
+ JDBCConfiguration conf = (JDBCConfiguration) ((OpenJPAEntityManagerFactory) emf).getConfiguration();
+
+ EntityManager em = emf.createEntityManager();
+
+ em.getTransaction().begin();
+
+ Query q = em.createNativeQuery("CREATE TABLE USCHEMA.USCHANTBL (ID INTEGER PRIMARY KEY)");
+ try {
+ q.executeUpdate();
+ em.getTransaction().commit();
+ } catch (Throwable t) {
+ em.getTransaction().rollback();
+ System.out.println(t.toString());
+ }
+
+ ReverseMappingTool.Flags flags = new ReverseMappingTool.Flags();
+ flags.metaDataLevel = "package";
+ flags.generateAnnotations = true;
+ flags.accessType = "property";
+ flags.nullableAsObject = true;
+ flags.useSchemaName = false;
+ flags.useSchemaElement = false;
+ flags.packageName = "";
+ flags.directory = Files.getFile("./target", null);
+ ReverseMappingTool.run(conf, new String[0], flags, null);
+
+ /* Now that the tool has been run, we will test it by reading the generated files */
+
+ // This tests the removal of the schema annotation in the Uschantbl.java file
+ File uschantbl = new File("./target/Uschantbl.java");
+ Scanner inFile = null;
+ String currentLine;
+ try {
+ inFile = new Scanner(uschantbl);
+
+ while(inFile.hasNextLine())
+ {
+ currentLine = inFile.nextLine();
+ if((currentLine.length()) > 0 && (currentLine.charAt(0) != '@'))
+ {
+ continue;
+ }
+
+ if(currentLine.contains("Table(schema="))
+ {
+ fail("Uschantbl.java still contains schema name");
+ }
+ }
+
+ // Delete file to clean up workspace
+ assertTrue(uschantbl.delete());
+
+ } catch (FileNotFoundException e) {
+ fail("Uschantbl.java not generated in ./target by ReverseMappingTool");
+ }
+ finally {
+ if (inFile != null) {
+ inFile.close();
+ }
+ }
+
+ // This tests the removal of the schema name from the orm.xml file
+ File orm = new File("target/orm.xml");
+ try {
+ inFile = new Scanner(orm);
+ while(inFile.hasNextLine())
+ {
+ if(inFile.nextLine().contains("<table schema="))
+ {
+ fail("Orm.xml still contains schema name");
+ }
+ }
+ } catch (FileNotFoundException e) {
+ fail("Orm.xml not generated in root directory by ReverseMappingTool");
+ }
+ finally {
+ if (inFile != null) {
+ inFile.close();
+ }
+ }
+ // Delete file to clean up workspace. Also, test will break with
+ // org.apache.openjpa.util.UserException if orm.xml exists prior to running
+ //assertTrue(orm.delete());
+ }
+
}
Modified: openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java
URL: http://svn.apache.org/viewvc/openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java?rev=1535648&r1=1535647&r2=1535648&view=diff
==============================================================================
--- openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java (original)
+++ openjpa/trunk/openjpa-persistence/src/main/java/org/apache/openjpa/persistence/PersistenceMetaDataFactory.java Fri Oct 25 07:13:13 2013
@@ -521,7 +521,7 @@ public class PersistenceMetaDataFactory
J2DoPrivHelper.existsAction(file))).booleanValue())
return file;
}
- return new File("orm.xml");
+ return new File(dir, "orm.xml");
}
public void setConfiguration(Configuration conf) {