Author: msahyoun Date: Mon Nov 16 15:24:14 2020 New Revision: 1883480 URL: http://svn.apache.org/viewvc?rev=1883480&view=rev Log: PDFBOX-5017: use new class SchemaTester for test to support JUnit5 parameterized testing
Modified: pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/DublinCoreTest.java pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/PhotoshopSchemaTest.java Modified: pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/DublinCoreTest.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/DublinCoreTest.java?rev=1883480&r1=1883479&r2=1883480&view=diff ============================================================================== --- pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/DublinCoreTest.java (original) +++ pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/DublinCoreTest.java Mon Nov 16 15:24:14 2020 @@ -20,55 +20,97 @@ package org.apache.xmpbox.schema; -import java.util.ArrayList; -import java.util.Collection; - +import org.apache.xmpbox.XMPMetadata; import org.apache.xmpbox.type.Cardinality; import org.apache.xmpbox.type.Types; -import org.junit.Before; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; -import org.junit.runners.Parameterized.Parameters; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; + -@RunWith(Parameterized.class) -public class DublinCoreTest extends AbstractSchemaTester +public class DublinCoreTest { + @ParameterizedTest + @MethodSource("initializeParameters") + public void testInitializedToNull(SchemaTester schemaTester) throws Exception + { + schemaTester.testInitializedToNull(); + } - public DublinCoreSchema getSchema() + @ParameterizedTest + @MethodSource("initializeParameters") + public void testSettingValue(SchemaTester schemaTester) throws Exception { - return xmp.createAndAddDublinCoreSchema(); + schemaTester.testSettingValue(); } - @Before - public void before() throws Exception + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomSettingValue(SchemaTester schemaTester) throws Exception { - super.before(); + schemaTester.testRandomSettingValue(); } - public DublinCoreTest(String fieldName, Types type, Cardinality card) + @ParameterizedTest + @MethodSource("initializeParameters") + public void testSettingValueInArray(SchemaTester schemaTester) throws Exception { - super(fieldName, type, card); + schemaTester.testSettingValueInArray(); } - @Parameters - public static Collection<Object[]> initializeParameters() throws Exception + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomSettingValueInArray(SchemaTester schemaTester) throws Exception { - Collection<Object[]> result = new ArrayList<>(); + schemaTester.testRandomSettingValueInArray(); + } - result.add(new Object[] { "contributor", Types.ProperName, Cardinality.Bag }); - result.add(new Object[] { "coverage", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "creator", Types.ProperName, Cardinality.Seq }); - result.add(new Object[] { "date", Types.Date, Cardinality.Seq }); - result.add(new Object[] { "format", Types.MIMEType, Cardinality.Simple }); - result.add(new Object[] { "identifier", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "language", Types.Locale, Cardinality.Bag }); - result.add(new Object[] { "publisher", Types.ProperName, Cardinality.Bag }); - result.add(new Object[] { "relation", Types.Text, Cardinality.Bag }); - result.add(new Object[] { "source", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "subject", Types.Text, Cardinality.Bag }); - result.add(new Object[] { "type", Types.Text, Cardinality.Bag }); + @ParameterizedTest + @MethodSource("initializeParameters") + public void testPropertySetterSimple(SchemaTester schemaTester) throws Exception + { + schemaTester.testPropertySetterSimple(); + } - return result; + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomPropertySetterSimple(SchemaTester schemaTester) throws Exception + { + schemaTester.testRandomPropertySetterSimple(); } + @ParameterizedTest + @MethodSource("initializeParameters") + public void testPropertySetterInArray(SchemaTester schemaTester) throws Exception + { + schemaTester.testPropertySetterInArray(); + } + + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomPropertySetterInArray(SchemaTester schemaTester) throws Exception + { + schemaTester.testRandomPropertySetterInArray(); + } + + private static SchemaTester[] initializeParameters() + { + XMPMetadata metadata = XMPMetadata.createXMPMetadata(); + XMPSchema schema = metadata.createAndAddDublinCoreSchema(); + + return new SchemaTester[] { + // data for JobType + new SchemaTester(metadata, schema, "contributor", Types.ProperName, Cardinality.Bag), + new SchemaTester(metadata, schema, "coverage", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "creator", Types.ProperName, Cardinality.Seq), + new SchemaTester(metadata, schema, "date", Types.Date, Cardinality.Seq), + new SchemaTester(metadata, schema, "format", Types.MIMEType, Cardinality.Simple), + new SchemaTester(metadata, schema, "identifier", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "language", Types.Locale, Cardinality.Bag), + new SchemaTester(metadata, schema, "publisher", Types.ProperName, Cardinality.Bag), + new SchemaTester(metadata, schema, "relation", Types.Text, Cardinality.Bag), + new SchemaTester(metadata, schema, "source", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "subject", Types.Text, Cardinality.Bag), + new SchemaTester(metadata, schema, "type", Types.Text, Cardinality.Bag) + }; + } } Modified: pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/PhotoshopSchemaTest.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/PhotoshopSchemaTest.java?rev=1883480&r1=1883479&r2=1883480&view=diff ============================================================================== --- pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/PhotoshopSchemaTest.java (original) +++ pdfbox/trunk/xmpbox/src/test/java/org/apache/xmpbox/schema/PhotoshopSchemaTest.java Mon Nov 16 15:24:14 2020 @@ -20,63 +20,102 @@ package org.apache.xmpbox.schema; -import java.util.ArrayList; -import java.util.Collection; - +import org.apache.xmpbox.XMPMetadata; import org.apache.xmpbox.type.Cardinality; import org.apache.xmpbox.type.Types; -import org.junit.Before; -import org.junit.runner.RunWith; -import org.junit.runners.Parameterized; -import org.junit.runners.Parameterized.Parameters; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.MethodSource; -@RunWith(Parameterized.class) -public class PhotoshopSchemaTest extends AbstractSchemaTester -{ +public class PhotoshopSchemaTest +{ + @ParameterizedTest + @MethodSource("initializeParameters") + public void testInitializedToNull(SchemaTester schemaTester) throws Exception + { + schemaTester.testInitializedToNull(); + } - @Override - public PhotoshopSchema getSchema() + @ParameterizedTest + @MethodSource("initializeParameters") + public void testSettingValue(SchemaTester schemaTester) throws Exception { - return xmp.createAndAddPhotoshopSchema(); + schemaTester.testSettingValue(); } - @Before - @Override - public void before() throws Exception + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomSettingValue(SchemaTester schemaTester) throws Exception { - super.before(); + schemaTester.testRandomSettingValue(); } - public PhotoshopSchemaTest(String fieldName, Types type, Cardinality card) + @ParameterizedTest + @MethodSource("initializeParameters") + public void testSettingValueInArray(SchemaTester schemaTester) throws Exception { - super(fieldName, type, card); + schemaTester.testSettingValueInArray(); } - @Parameters - public static Collection<Object[]> initializeParameters() throws Exception + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomSettingValueInArray(SchemaTester schemaTester) throws Exception { - Collection<Object[]> result = new ArrayList<>(); + schemaTester.testRandomSettingValueInArray(); + } - result.add(new Object[] { "AncestorID", Types.URI, Cardinality.Simple }); - result.add(new Object[] { "AuthorsPosition", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "CaptionWriter", Types.ProperName, Cardinality.Simple }); - result.add(new Object[] { "Category", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "City", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "ColorMode", Types.Integer, Cardinality.Simple }); - result.add(new Object[] { "Country", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "Credit", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "DateCreated", Types.Date, Cardinality.Simple }); - result.add(new Object[] { "Headline", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "History", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "ICCProfile", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "Instructions", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "Source", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "State", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "SupplementalCategories", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "TransmissionReference", Types.Text, Cardinality.Simple }); - result.add(new Object[] { "Urgency", Types.Integer, Cardinality.Simple }); + @ParameterizedTest + @MethodSource("initializeParameters") + public void testPropertySetterSimple(SchemaTester schemaTester) throws Exception + { + schemaTester.testPropertySetterSimple(); + } - return result; + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomPropertySetterSimple(SchemaTester schemaTester) throws Exception + { + schemaTester.testRandomPropertySetterSimple(); } + @ParameterizedTest + @MethodSource("initializeParameters") + public void testPropertySetterInArray(SchemaTester schemaTester) throws Exception + { + schemaTester.testPropertySetterInArray(); + } + + @ParameterizedTest + @MethodSource("initializeParameters") + public void testRandomPropertySetterInArray(SchemaTester schemaTester) throws Exception + { + schemaTester.testRandomPropertySetterInArray(); + } + + private static SchemaTester[] initializeParameters() + { + XMPMetadata metadata = XMPMetadata.createXMPMetadata(); + XMPSchema schema = metadata.createAndAddPhotoshopSchema(); + + return new SchemaTester[] { + // data for JobType + new SchemaTester(metadata, schema, "AncestorID", Types.URI, Cardinality.Simple), + new SchemaTester(metadata, schema, "AuthorsPosition", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "CaptionWriter", Types.ProperName, Cardinality.Simple), + new SchemaTester(metadata, schema, "Category", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "City", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "ColorMode", Types.Integer, Cardinality.Simple), + new SchemaTester(metadata, schema, "Country", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "Credit", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "DateCreated", Types.Date, Cardinality.Simple), + new SchemaTester(metadata, schema, "Headline", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "History", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "ICCProfile", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "Instructions", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "Source", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "State", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "SupplementalCategories", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "TransmissionReference", Types.Text, Cardinality.Simple), + new SchemaTester(metadata, schema, "Urgency", Types.Integer, Cardinality.Simple) + }; + } }