Index: src/java/org/apache/jdo/tck/mapping/CompletenessTest.java
===================================================================
--- src/java/org/apache/jdo/tck/mapping/CompletenessTest.java (revision 381630)
+++ src/java/org/apache/jdo/tck/mapping/CompletenessTest.java (working copy)
@@ -17,10 +17,8 @@
package org.apache.jdo.tck.mapping;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.Iterator;
import java.util.List;
-import java.util.StringTokenizer;
import org.apache.jdo.tck.JDO_Test;
import org.apache.jdo.tck.pc.company.CompanyFactoryRegistry;
@@ -48,9 +46,13 @@
"Assertion A18-[not identified] failed: ";
/** */
+ private final boolean isTestToBePerformed = isTestToBePerformed();
+
+ /** */
protected List rootOids;
- protected String inputFilename = System.getProperty("jdo.tck.testdata");
+ /** */
+ protected final String inputFilename = System.getProperty("jdo.tck.testdata");
/**
* The main is called when the class
@@ -61,31 +63,11 @@
BatchTestRunner.run(CompletenessTest.class);
}
- private boolean isTestToBePerformed() {
- boolean isTestToBePerformed = true;
- String requiredOptions = System.getProperty("jdo.tck.requiredOptions");
- Collection supportedOptions = getPMF().supportedOptions();
- StringTokenizer tokenizer = new StringTokenizer(requiredOptions, " ,");
- while (tokenizer.hasMoreTokens()) {
- String token = tokenizer.nextToken();
- if (!token.equals("") &&
- !supportedOptions.contains(token)) {
- isTestToBePerformed = false;
- int index = getClass().getName().lastIndexOf('.');
- String testName = index==-1 ?
- getClass().getName() : getClass().getName().substring(index+1);
- printUnsupportedOptionalFeatureNotTested(testName, token);
- break;
- }
- }
- return isTestToBePerformed;
- }
-
/**
* @see JDO_Test#localSetUp()
*/
protected void localSetUp() {
- if (isTestToBePerformed()) {
+ if (isTestToBePerformed) {
addTearDownClass(CompanyModelReader.getTearDownClasses());
getPM();
CompanyFactoryRegistry.registerFactory(pm);
@@ -106,7 +88,7 @@
/** */
public void test() {
- if (isTestToBePerformed()) {
+ if (isTestToBePerformed) {
// register the default factory
CompanyFactoryRegistry.registerFactory();
// get new obj graph to compare persistent graph with
Index: src/java/org/apache/jdo/tck/JDO_Test.java
===================================================================
--- src/java/org/apache/jdo/tck/JDO_Test.java (revision 381630)
+++ src/java/org/apache/jdo/tck/JDO_Test.java (working copy)
@@ -33,6 +33,7 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
+import java.util.StringTokenizer;
import java.util.Vector;
import javax.jdo.Extent;
@@ -876,4 +877,32 @@
protected String getPMFProperty(String key) {
return PMFPropertiesObject.getProperty(key);
}
+
+ /**
+ * Returns true if the implementation under test
+ * supports all JDO options contained in system property
+ * jdo.tck.requiredOptions.
+ * @return true if the implementation under test
+ * supports all JDO options contained in system property
+ * jdo.tck.requiredOptions
+ */
+ protected boolean isTestToBePerformed() {
+ boolean isTestToBePerformed = true;
+ String requiredOptions = System.getProperty("jdo.tck.requiredOptions");
+ Collection supportedOptions = getPMF().supportedOptions();
+ StringTokenizer tokenizer = new StringTokenizer(requiredOptions, " ,");
+ while (tokenizer.hasMoreTokens()) {
+ String requiredOption = tokenizer.nextToken();
+ logger.debug("Required option: " + requiredOption);
+ if (!requiredOption.equals("") &&
+ !supportedOptions.contains(requiredOption)) {
+ isTestToBePerformed = false;
+ int index = getClass().getName().lastIndexOf('.');
+ String testName = index==-1 ?
+ getClass().getName() : getClass().getName().substring(index+1);
+ printUnsupportedOptionalFeatureNotTested(testName, requiredOption);
+ }
+ }
+ return isTestToBePerformed;
+ }
}
Index: src/conf/inheritance1.conf
===================================================================
--- src/conf/inheritance1.conf (revision 381630)
+++ src/conf/inheritance1.conf (working copy)
@@ -5,4 +5,4 @@
jdo.tck.classes = org.apache.jdo.tck.mapping.CompletenessTest
jdo.tck.testdata = org/apache/jdo/tck/pc/company/companyAllRelationships.xml
jdo.tck.mapping = 1
-jdo.tck.requiredOptions =
+jdo.tck.requiredOptions = javax.jdo.option.mapping.JoinedTablePerClass
Index: src/conf/inheritance3.conf
===================================================================
--- src/conf/inheritance3.conf (revision 381630)
+++ src/conf/inheritance3.conf (working copy)
@@ -7,4 +7,5 @@
jdo.tck.classes = org.apache.jdo.tck.mapping.CompletenessTest
jdo.tck.testdata = org/apache/jdo/tck/pc/company/companyAllRelationships.xml
jdo.tck.mapping = 3
-jdo.tck.requiredOptions =
+jdo.tck.requiredOptions = javax.jdo.option.mapping.JoinedTablePerConcreteClass \
+ javax.jdo.option.mapping.RelationSubclassTable
Index: src/conf/inheritance2.conf
===================================================================
--- src/conf/inheritance2.conf (revision 381630)
+++ src/conf/inheritance2.conf (working copy)
@@ -12,4 +12,5 @@
jdo.tck.classes = org.apache.jdo.tck.mapping.CompletenessTest
jdo.tck.testdata = org/apache/jdo/tck/pc/company/companyAllRelationships.xml
jdo.tck.mapping = 2
-jdo.tck.requiredOptions = javax.jdo.option.UnionJoin
+jdo.tck.requiredOptions = javax.jdo.option.mapping.NonJoinedTablePerConcreteClass \
+ javax.jdo.option.mapping.RelationSubclassTable