MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SingleEMFTestCase.java
1 /*
2  Copyright 2010 Sun Microsystems, Inc.
3  All rights reserved. Use is subject to license terms.
4 
5  This program is free software; you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation; version 2 of the License.
8 
9  This program is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with this program; if not, write to the Free Software
16  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17 */
18 
19 package com.mysql.clusterj.jpatest;
20 
21 import java.util.ArrayList;
22 import java.util.List;
23 
24 import javax.persistence.EntityManagerFactory;
25 
30 public abstract class SingleEMFTestCase
31  extends PersistenceTestCase {
32 
33  protected EntityManagerFactory emf;
34 
38  public void setUp() {
39  List<String> extraProps = new ArrayList<String>();
40  String connectionDriverName = System.getProperty("openjpa.ConnectionDriverName");
41  String connectionURL = System.getProperty("openjpa.ConnectionURL");
42  String connectString = System.getProperty("openjpa.ndb.connectString");
43  if (connectionDriverName != null) {
44  extraProps.add("openjpa.ConnectionDriverName");
45  extraProps.add(connectionDriverName);
46  }
47  if (connectionURL != null) {
48  extraProps.add("openjpa.ConnectionURL");
49  extraProps.add(connectionURL);
50  }
51  if (connectString != null) {
52  extraProps.add("openjpa.ndb.connectString");
53  extraProps.add(connectString);
54  }
55  setUp(extraProps.toArray());
56  }
57 
62  protected void setUp(Object... props) {
63  emf = createEMF(props);
64  }
65 
69  public void tearDown() throws Exception {
70  super.tearDown();
71  if (emf == null)
72  return;
73  try {
74  closeEMF(emf);
75  } catch (Exception e) {
76  // if the test failed, swallow any exceptions that happen
77  // during tear-down, as these just mask the original problem.
78  // if the test succeeded, this is a real problem.
79  if (testResult.wasSuccessful())
80  throw e;
81  }
82  }
83 
84 }