Author: mcaisse Date: Fri Feb 8 14:52:32 2008 New Revision: 620023 URL: http://svn.apache.org/viewvc?rev=620023&view=rev Log: JDO-576 TCK tests of jdoconfig.xml Added: db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml (with props) db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml (with props) db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/ db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java (with props) Modified: db/jdo/trunk/tck2-legacy/maven.xml db/jdo/trunk/tck2-legacy/src/conf/jdori-pmf.properties db/jdo/trunk/tck2-legacy/src/conf/runonce.conf Modified: db/jdo/trunk/tck2-legacy/maven.xml URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/maven.xml?rev=620023&r1=620022&r2=620023&view=diff ============================================================================== --- db/jdo/trunk/tck2-legacy/maven.xml (original) +++ db/jdo/trunk/tck2-legacy/maven.xml Fri Feb 8 14:52:32 2008 @@ -257,6 +257,7 @@ + @@ -304,6 +305,7 @@ + @@ -757,10 +759,9 @@ - - - + Added: db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml?rev=620023&view=auto ============================================================================== --- db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml (added) +++ db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml Fri Feb 8 14:52:32 2008 @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Propchange: db/jdo/trunk/tck2-legacy/src/conf/iut-jdoconfig.xml ------------------------------------------------------------------------------ svn:eol-style = LF Added: db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml?rev=620023&view=auto ============================================================================== --- db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml (added) +++ db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml Fri Feb 8 14:52:32 2008 @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Propchange: db/jdo/trunk/tck2-legacy/src/conf/jdori-jdoconfig.xml ------------------------------------------------------------------------------ svn:eol-style = LF Modified: db/jdo/trunk/tck2-legacy/src/conf/jdori-pmf.properties URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/src/conf/jdori-pmf.properties?rev=620023&r1=620022&r2=620023&view=diff ============================================================================== --- db/jdo/trunk/tck2-legacy/src/conf/jdori-pmf.properties (original) +++ db/jdo/trunk/tck2-legacy/src/conf/jdori-pmf.properties Fri Feb 8 14:52:32 2008 @@ -26,7 +26,6 @@ javax.jdo.option.Optimistic=false javax.jdo.option.RetainValues=false javax.jdo.option.RestoreValues=false -javax.jdo.option.Mapping=derby org.jpox.metadata.validate=false org.jpox.validateTables=false Modified: db/jdo/trunk/tck2-legacy/src/conf/runonce.conf URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/src/conf/runonce.conf?rev=620023&r1=620022&r2=620023&view=diff ============================================================================== --- db/jdo/trunk/tck2-legacy/src/conf/runonce.conf (original) +++ db/jdo/trunk/tck2-legacy/src/conf/runonce.conf Fri Feb 8 14:52:32 2008 @@ -21,4 +21,5 @@ # The runOnce flag must only be set in this configuration and no others runOnce = true jdo.tck.classes = \ -org.apache.jdo.tck.api.SignatureTest +org.apache.jdo.tck.api.SignatureTest \ +org.apache.jdo.tck.api.persistencemanagerfactory.config.Jdoconfig \ No newline at end of file Added: db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java URL: http://svn.apache.org/viewvc/db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java?rev=620023&view=auto ============================================================================== --- db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java (added) +++ db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java Fri Feb 8 14:52:32 2008 @@ -0,0 +1,135 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.jdo.tck.api.persistencemanagerfactory.config; + +import javax.jdo.JDOHelper; +import javax.jdo.PersistenceManager; +import javax.jdo.PersistenceManagerFactory; +import javax.jdo.Transaction; +import org.apache.jdo.tck.JDO_Test; +import org.apache.jdo.tck.pc.mylib.PCPoint; +import org.apache.jdo.tck.util.BatchTestRunner; + +/** + *Title:Close of PersistenceManagerFactory + *
+ *Keywords: persistencemanagerfactory, jdoconfig.xml + *
+ *Assertion IDs: A11.1.2-1 + *
+ *Assertion Description: + * Users can access a PersistenceManagerFactory by creating a jdoconfig.xml file + * and making it available on the class path as META-INF/jdoconfig.xml. + */ +public class Jdoconfig extends JDO_Test { + + /** Creates a new instance of Jdoconfig */ + public Jdoconfig() { + } + /** */ + private static final String ASSERTION_FAILED = + "Assertion A11.1.2-1 failed: "; + private static final String ANONYMOUS_PMF_NAME = ""; + // Do not use superclass pmf, pm + private PersistenceManagerFactory pmf = null; + private PersistenceManager pm = null; + + /** + * The main is called when the class + * is directly executed from the command line. + * @param args The arguments passed to the program. + */ + public static void main(String[] args) { + BatchTestRunner.run(Jdoconfig.class); + } + + /** */ + public void testGetPMFNoArgs() { + pmf = JDOHelper.getPersistenceManagerFactory(); + runTest(ANONYMOUS_PMF_NAME); + } + + /** */ + public void testGetPMFEmptyString() { + String name = ""; + pmf = JDOHelper.getPersistenceManagerFactory(name); + runTest(ANONYMOUS_PMF_NAME); + } + + /** */ + public void testGetPMFNull() { + String name = null; + pmf = JDOHelper.getPersistenceManagerFactory(name); + runTest(ANONYMOUS_PMF_NAME); + } + + /** */ + public void testGetPMFStringSpace() { + String name = " "; + pmf = JDOHelper.getPersistenceManagerFactory(name); + runTest(ANONYMOUS_PMF_NAME); + } + + /** */ + public void testGetPMFNamed() { + String name = "namedPMF0"; + pmf = JDOHelper.getPersistenceManagerFactory(name); + assertEquals("Incorrect value for RestoreValues", + pmf.getRestoreValues(), false); + runTest(name); + } + + /** */ + public void testGetPMFNamedSpaces() { + String name = "namedPMF1"; + pmf = JDOHelper.getPersistenceManagerFactory(" \t" + name + " \n"); + assertEquals("Incorrect value for RestoreValues", + pmf.getRestoreValues(), true); + runTest(name); + } + + /** */ + public void runTest(String name) { + assertEquals("Incorrect PMF name", pmf.getName(), name); + + // check pmf.isClosed() before and after pmf.close() + if (pmf.isClosed()) { + fail(ASSERTION_FAILED, + "PMF.isClosed() returned true on an open pmf"); + } + makePersistent(); + + pmf.close(); + + if (!pmf.isClosed()) { + fail(ASSERTION_FAILED, + "PMF.isClosed() returned false on a closed pmf"); + } + // have next invocation of getPMF() get a new pmf + pmf = null; + } + + protected void makePersistent() { + addTearDownClass(PCPoint.class); + pm = pmf.getPersistenceManager(); + Transaction tx = pm.currentTransaction(); + tx.begin(); + PCPoint comp = new PCPoint(1, 2); + pm.makePersistent(comp); + tx.commit(); + } +} Propchange: db/jdo/trunk/tck2-legacy/src/java/org/apache/jdo/tck/api/persistencemanagerfactory/config/Jdoconfig.java ------------------------------------------------------------------------------ svn:eol-style = LF