diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/CSVFactoryFeaturesTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/CSVFactoryFeaturesTest.java index 2e7b8988e..c4f59f880 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/CSVFactoryFeaturesTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/CSVFactoryFeaturesTest.java @@ -1,13 +1,20 @@ package com.fasterxml.jackson.dataformat.csv; +import java.io.StringReader; +import java.io.StringWriter; + +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.core.StreamReadFeature; import com.fasterxml.jackson.core.StreamWriteFeature; -import java.io.StringReader; -import java.io.StringWriter; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class CSVFactoryFeaturesTest extends ModuleTestBase { + @Test public void testFactoryFeatures() throws Exception { CsvFactory f = new CsvFactory(); @@ -31,6 +38,7 @@ public void testFactoryFeatures() throws Exception g.close(); } + @Test public void testFactoryFastFeatures() throws Exception { CsvFactory f = new CsvFactory(); @@ -46,6 +54,7 @@ public void testFactoryFastFeatures() throws Exception assertTrue(generator.isEnabled(StreamWriteFeature.USE_FAST_DOUBLE_WRITER)); } + @Test public void testFactoryFastBigNumberFeature() throws Exception { CsvFactory f = new CsvFactory(); @@ -57,6 +66,7 @@ public void testFactoryFastBigNumberFeature() throws Exception assertTrue(parser.isEnabled(StreamReadFeature.USE_FAST_BIG_NUMBER_PARSER)); } + @Test public void testFactoryBuilderFastFeatures() throws Exception { CsvFactory f = CsvFactory.builder() @@ -73,6 +83,7 @@ public void testFactoryBuilderFastFeatures() throws Exception assertTrue(generator.isEnabled(StreamWriteFeature.USE_FAST_DOUBLE_WRITER)); } + @Test public void testFactoryBuilderFastBigNumberFeature() throws Exception { CsvFactory f = CsvFactory.builder() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ModuleTestBase.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ModuleTestBase.java index 118670bd5..142b3e0e8 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ModuleTestBase.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ModuleTestBase.java @@ -1,19 +1,16 @@ package com.fasterxml.jackson.dataformat.csv; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; +import java.io.*; import java.nio.charset.StandardCharsets; -import java.util.Arrays; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; +import java.util.*; -import com.fasterxml.jackson.core.*; import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.core.*; -public abstract class ModuleTestBase extends junit.framework.TestCase +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.fail; + +public abstract class ModuleTestBase { public enum Gender { MALE, FEMALE }; @@ -332,4 +329,5 @@ protected byte[] readResource(String ref) } return bytes.toByteArray(); } + } diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/NullReader122Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/NullReader122Test.java index 206bc711c..b020f0680 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/NullReader122Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/NullReader122Test.java @@ -1,15 +1,21 @@ package com.fasterxml.jackson.dataformat.csv; -import java.io.*; +import java.io.Reader; import java.util.Map; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.ObjectReader; +import static org.junit.jupiter.api.Assertions.fail; + + public class NullReader122Test extends ModuleTestBase { private final CsvMapper MAPPER = mapperForCsv(); // for [dataformats-text#122]: passing `null` Reader leads to infinite loop + @Test public void testEmptyStream() throws Exception { CsvSchema columns = CsvSchema.emptySchema().withHeader().withColumnSeparator(';'); ObjectReader r = MAPPER.readerFor(Map.class).with(columns); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/SchemaCaching288Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/SchemaCaching288Test.java index 6e3118920..5975a75cb 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/SchemaCaching288Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/SchemaCaching288Test.java @@ -1,8 +1,13 @@ package com.fasterxml.jackson.dataformat.csv; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonView; +import static org.junit.jupiter.api.Assertions.assertEquals; + + public class SchemaCaching288Test extends ModuleTestBase { static class ViewA { } @@ -28,6 +33,7 @@ static class Bean288 */ // [dataformats-text#288]: caching should not overlap with View + @Test public void testCachingNoViewFirst() throws Exception { CsvMapper mapper1 = mapperForCsv(); @@ -52,6 +58,7 @@ public void testCachingNoViewFirst() throws Exception } // [dataformats-text#288]: caching should not overlap with View + @Test public void testCachingWithViewFirst() throws Exception { CsvMapper mapper1 = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/TestVersions.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/TestVersions.java index abf671f21..d1cdec9c0 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/TestVersions.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/TestVersions.java @@ -1,12 +1,18 @@ package com.fasterxml.jackson.dataformat.csv; -import java.io.*; +import java.io.ByteArrayOutputStream; +import java.io.IOException; -import com.fasterxml.jackson.core.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.core.Versioned; import com.fasterxml.jackson.databind.MapperFeature; +import static org.junit.jupiter.api.Assertions.*; + public class TestVersions extends ModuleTestBase { + @Test public void testMapperVersions() throws IOException { CsvFactory f = new CsvFactory(); @@ -20,6 +26,7 @@ public void testMapperVersions() throws IOException } // Mostly to verify #11 + @Test public void testMapperDefaults() { CsvMapper mapper = new CsvMapper(); @@ -28,6 +35,7 @@ public void testMapperDefaults() // Also, not strictly related to version but... + @Test public void testMapperCopy() { CsvMapper mapper = new CsvMapper(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/AnySetterTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/AnySetterTest.java index ece0b2b18..dc78f311f 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/AnySetterTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/AnySetterTest.java @@ -1,10 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.util.*; +import java.util.LinkedHashMap; +import java.util.Map; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonAnySetter; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class AnySetterTest extends ModuleTestBase { static class Entry { @@ -29,6 +34,7 @@ public void set(String key, Object value) { /********************************************************************** */ + @Test public void testSimpleHeader() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -42,6 +48,7 @@ public void testSimpleHeader() throws Exception } // [dataformat-csv@109]: allow "any-setter-like" + @Test public void testWithMapToAny() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ArrayReadTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ArrayReadTest.java index b7d4f4e60..afd04f7ad 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ArrayReadTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ArrayReadTest.java @@ -1,11 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; + // for [dataformat-csv#57] public class ArrayReadTest extends ModuleTestBase { @@ -32,6 +34,7 @@ public ValueEntry(@JsonProperty("id") String id, private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleExplicitLooseTyping() throws Exception { ValueEntry value = MAPPER.readerWithSchemaFor(ValueEntry.class) @@ -48,6 +51,7 @@ public void testSimpleExplicitLooseTyping() throws Exception } // Same as above, but Array value in double-quotes: + @Test public void testSimpleExplicitLooseTypingWithQuotes() throws Exception { ValueEntry value = MAPPER.readerWithSchemaFor(ValueEntry.class) @@ -63,6 +67,7 @@ public void testSimpleExplicitLooseTypingWithQuotes() throws Exception assertEquals(3, v[2]); } + @Test public void testSimpleExplicitStrictTyping() throws Exception { ValueEntry value = MAPPER.readerWithTypedSchemaFor(ValueEntry.class) @@ -88,6 +93,7 @@ public void testSimpleExplicitStrictTyping() throws Exception assertEquals(0, v.length); } + @Test public void testSeparatorOverrideSpace() throws Exception { ValueEntry input = new ValueEntry("foo", "stuff", new int[] {1, 2, 3}); @@ -113,6 +119,7 @@ public void testSeparatorOverrideSpace() throws Exception assertEquals(3, v[2]); } + @Test public void testSeparatorOverrideMulti() throws Exception { ValueEntry input = new ValueEntry("foo", "stuff", new int[] {1, 2, 3}); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BasicCSVParserTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BasicCSVParserTest.java index 9097c5013..fc6aabb80 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BasicCSVParserTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BasicCSVParserTest.java @@ -4,15 +4,16 @@ import java.io.IOException; import java.util.*; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonToken; - -import com.fasterxml.jackson.databind.*; +import com.fasterxml.jackson.databind.MappingIterator; +import com.fasterxml.jackson.databind.ObjectReader; import com.fasterxml.jackson.dataformat.csv.*; -import static org.junit.Assert.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.*; public class BasicCSVParserTest extends ModuleTestBase { @@ -39,6 +40,7 @@ public static class Point { final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleExplicit() throws Exception { ObjectReader r = MAPPER.reader(SIMPLE_SCHEMA); @@ -63,6 +65,7 @@ private void _testSimpleExplicit(ObjectReader r, boolean useBytes) throws Except assertArrayEquals(new byte[]{1, 2, 3, 4, 5}, user.getUserImage()); } + @Test public void testSimpleExplicitWithBOM() throws Exception { ObjectReader r = MAPPER.reader(SIMPLE_SCHEMA); r = r.forType(FiveMinuteUser.class); @@ -87,6 +90,7 @@ public void testSimpleExplicitWithBOM() throws Exception { assertArrayEquals(new byte[]{1, 2, 3, 4, 5}, user.getUserImage()); } + @Test public void testSimpleWithAutoSchema() throws Exception { CsvSchema schema = MAPPER.schemaFor(FiveMinuteUser.class); // NOTE: order different from above test (as per POJO def!) @@ -102,6 +106,7 @@ public void testSimpleWithAutoSchema() throws Exception { * Test to verify that we can mix "untyped" access as Maps * with schema information... */ + @Test public void testSimpleAsMaps() throws Exception { CsvSchema schema = MAPPER.schemaFor(FiveMinuteUser.class); MappingIterator> it = MAPPER.reader(schema).forType(Map.class).readValues( @@ -121,6 +126,7 @@ public void testSimpleAsMaps() throws Exception { } // Test for [Issue#10] + @Test public void testMapsWithLinefeeds() throws Exception { _testMapsWithLinefeeds(false); _testMapsWithLinefeeds(true); @@ -178,6 +184,7 @@ private void _testMapsWithLinefeeds(boolean useBytes) throws Exception { } // [dataformat-csv#12] + @Test public void testEmptyHandlingForInteger() throws Exception { CsvSchema schema = MAPPER.typedSchemaFor(Point.class).withoutHeader(); @@ -188,6 +195,7 @@ public void testEmptyHandlingForInteger() throws Exception { assertNull(result.z); } + @Test public void testStringNullHandlingForInteger() throws Exception { CsvSchema schema = MAPPER.typedSchemaFor(Point.class).withoutHeader(); @@ -198,6 +206,7 @@ public void testStringNullHandlingForInteger() throws Exception { assertNull(result.z); } + @Test public void testLeadingZeroesForInts() throws Exception { CsvSchema schema = MAPPER.typedSchemaFor(Point.class).withoutHeader(); Point result = MAPPER.readerFor(Point.class).with(schema).readValue("012,\"090\",\n"); @@ -207,6 +216,7 @@ public void testLeadingZeroesForInts() throws Exception { } // [dataformat-csv#41] + @Test public void testIncorrectDups41() throws Exception { final String INPUT = "\"foo\",\"bar\",\"foo\""; CsvSchema schema = CsvSchema.builder().addColumn("Col1").addColumn("Col2") @@ -228,6 +238,7 @@ public void testIncorrectDups41() throws Exception { } // for [dataformat-csv#89] + @Test public void testColumnReordering() throws IOException { CsvFactory factory = new CsvFactory(); String CSV = "b,a,c\nvb,va,vc\n"; @@ -348,6 +359,7 @@ public void testColumnReordering() throws IOException { parser.close(); } + @Test public void testColumnFailsOnOutOfOrder() throws IOException { CsvFactory factory = new CsvFactory(); String CSV = "b,a,c\nvb,va,vc\n"; @@ -373,6 +385,7 @@ public void testColumnFailsOnOutOfOrder() throws IOException { parser.close(); } + @Test public void testColumnFailsOnTooFew() throws IOException { CsvFactory factory = new CsvFactory(); String CSV = "a,b\nvb,va,vc\n"; @@ -398,6 +411,7 @@ public void testColumnFailsOnTooFew() throws IOException { parser.close(); } + @Test public void testColumnFailsOnTooMany() throws IOException { CsvFactory factory = new CsvFactory(); String CSV = "a,b,c,d\nvb,va,vc\n"; @@ -423,6 +437,7 @@ public void testColumnFailsOnTooMany() throws IOException { parser.close(); } + @Test public void testStrictColumnReturnsExpectedData() throws IOException { CsvSchema schema = MAPPER.schemaFor(Point.class).withHeader().withStrictHeaders(true); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BlogPost2021AprilTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BlogPost2021AprilTest.java index f17ded554..8d6a7b512 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BlogPost2021AprilTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BlogPost2021AprilTest.java @@ -1,16 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.MappingIterator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.*; // Tests written to support a blog post written about Jackson // CSV module... @@ -32,6 +31,7 @@ static class Point { private final CsvMapper MAPPER = new CsvMapper(); + @Test public void testAsListOfLists() throws Exception { List> all = MAPPER @@ -41,6 +41,7 @@ public void testAsListOfLists() throws Exception _assertListOfLists(all); } + @Test public void testAsSequenceOfListsOfStrings() throws Exception { MappingIterator> it = MAPPER @@ -63,6 +64,7 @@ private void _assertListOfLists(List> all) { assertEquals(Arrays.asList("-13", "0", "true"), all.get(2)); } + @Test public void testAsSequenceOfMaps() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -99,6 +101,7 @@ public void testAsSequenceOfMaps() throws Exception } } + @Test public void testAsSequenceOfPOJOsWithHeader() throws Exception { CsvSchema schemaWithHeader = CsvSchema.emptySchema().withHeader(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BrokenEncodingTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BrokenEncodingTest.java index 04b922436..369876ec2 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BrokenEncodingTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/BrokenEncodingTest.java @@ -3,9 +3,14 @@ import java.io.ByteArrayOutputStream; import java.io.CharConversionException; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.core.JsonToken; + import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class BrokenEncodingTest extends ModuleTestBase { /* @@ -15,6 +20,7 @@ public class BrokenEncodingTest extends ModuleTestBase */ // Simple test where a Latin-1 character is encountered; first byte wrong + @Test public void testLatin1AsUTF8() throws Exception { CsvFactory factory = new CsvFactory(); @@ -54,6 +60,7 @@ public void testLatin1AsUTF8() throws Exception } // Then a test with "middle" byte broken + @Test public void testBrokenUTF8MiddleByte() throws Exception { CsvFactory factory = new CsvFactory(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CSVBigStringsTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CSVBigStringsTest.java index 06d67543d..a90513796 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CSVBigStringsTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CSVBigStringsTest.java @@ -2,15 +2,14 @@ import java.util.List; -import com.fasterxml.jackson.core.StreamReadConstraints; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.core.StreamReadConstraints; import com.fasterxml.jackson.databind.DatabindException; import com.fasterxml.jackson.databind.MappingIterator; +import com.fasterxml.jackson.dataformat.csv.*; -import com.fasterxml.jackson.dataformat.csv.CsvFactory; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.*; public class CSVBigStringsTest extends ModuleTestBase { @@ -25,6 +24,7 @@ private CsvMapper newCsvMapperWithUnlimitedStringSizeSupport() { return CsvMapper.builder(csvFactory).build(); } + @Test public void testBigString() throws Exception { try { @@ -36,11 +36,12 @@ public void testBigString() throws Exception fail("expected DatabindException"); } catch (DatabindException e) { final String message = e.getMessage(); - assertTrue("unexpected exception message: " + message, message.startsWith("String value length")); - assertTrue("unexpected exception message: " + message, message.contains("exceeds the maximum allowed (")); + assertTrue(message.startsWith("String value length"), "unexpected exception message: " + message); + assertTrue(message.contains("exceeds the maximum allowed ("), "unexpected exception message: " + message); } } + @Test public void testBiggerString() throws Exception { try { @@ -54,11 +55,12 @@ public void testBiggerString() throws Exception final String message = e.getMessage(); // this test fails when the TextBuffer is being resized, so we don't yet know just how big the string is // so best not to assert that the String length value in the message is the full 20_000_000 value - assertTrue("unexpected exception message: " + message, message.startsWith("String value length")); - assertTrue("unexpected exception message: " + message, message.contains("exceeds the maximum allowed (")); + assertTrue(message.startsWith("String value length"), "unexpected exception message: " + message); + assertTrue(message.contains("exceeds the maximum allowed ("), "unexpected exception message: " + message); } } + @Test public void testUnlimitedString() throws Exception { final int len = TOO_LONG_STRING_VALUE_LEN; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CommentsTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CommentsTest.java index ae40d7536..290edac92 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CommentsTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/CommentsTest.java @@ -2,14 +2,19 @@ import java.util.Map; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + // Tests for [csv#56] public class CommentsTest extends ModuleTestBase { final String CSV_WITH_COMMENTS = "x,y\n# comment!\na,b\n # another...\n"; + @Test public void testWithoutComments() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -52,6 +57,7 @@ public void testWithoutComments() throws Exception it.close(); } + @Test public void testSimpleComments() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -81,6 +87,7 @@ public void testSimpleComments() throws Exception it.close(); } + @Test public void testLeadingComments() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -101,6 +108,7 @@ public void testLeadingComments() throws Exception it.close(); } + @Test public void testCommentsWithHeaderRow() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -120,6 +128,7 @@ public void testCommentsWithHeaderRow() throws Exception } // Alternate test to ensure comments may be enabled + @Test public void testSimpleCommentsWithDefaultProp() throws Exception { CsvMapper mapper = mapperBuilder() @@ -137,4 +146,5 @@ public void testSimpleCommentsWithDefaultProp() throws Exception assertFalse(it.hasNext()); it.close(); } + } diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyStringAsNullTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyStringAsNullTest.java index 527c258d3..69dd95195 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyStringAsNullTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyStringAsNullTest.java @@ -1,13 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import java.io.IOException; + +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.ObjectReader; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; -import java.io.IOException; +import static org.junit.jupiter.api.Assertions.*; /** * Tests for {@code CsvParser.Feature.EMPTY_STRING_AS_NULL} @@ -29,6 +31,7 @@ static class TestUser { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testDefaultParseAsEmptyString() throws IOException { // setup test data TestUser expectedTestUser = new TestUser(); @@ -48,6 +51,7 @@ public void testDefaultParseAsEmptyString() throws IOException { assertEquals(expectedTestUser.lastName, actualTestUser.lastName); } + @Test public void testSimpleParseEmptyStringAsNull() throws IOException { // setup test data TestUser expectedTestUser = new TestUser(); @@ -66,11 +70,13 @@ public void testSimpleParseEmptyStringAsNull() throws IOException { // test assertNotNull(actualTestUser); assertEquals(expectedTestUser.firstName, actualTestUser.firstName); - assertNull("The column that contains an empty String should be deserialized as null ", actualTestUser.middleName); + assertNull(actualTestUser.middleName, + "The column that contains an empty String should be deserialized as null "); assertEquals(expectedTestUser.lastName, actualTestUser.lastName); } // [dataformats-text#222] + @Test public void testEmptyStringAsNullNonPojo() throws Exception { String csv = "Grace,,Hopper"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyUnquotedStringAsNullTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyUnquotedStringAsNullTest.java index c966ec5b1..d3a87bc41 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyUnquotedStringAsNullTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/EmptyUnquotedStringAsNullTest.java @@ -1,13 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import java.io.IOException; + +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.ObjectReader; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; -import java.io.IOException; +import static org.junit.jupiter.api.Assertions.*; /** * Tests for {@code CsvParser.Feature.EMPTY_UNQUOTED_STRING_AS_NULL} @@ -28,6 +30,7 @@ static class TestUser { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testDefaultParseAsEmptyString() throws IOException { // setup test data TestUser expectedTestUser = new TestUser(); @@ -47,6 +50,7 @@ public void testDefaultParseAsEmptyString() throws IOException { assertEquals(expectedTestUser.lastName, actualTestUser.lastName); } + @Test public void testSimpleParseEmptyUnquotedStringAsNull() throws IOException { // setup test data TestUser expectedTestUser = new TestUser(); @@ -65,10 +69,11 @@ public void testSimpleParseEmptyUnquotedStringAsNull() throws IOException { // test assertNotNull(actualTestUser); assertEquals(expectedTestUser.firstName, actualTestUser.firstName); - assertNull("The column that contains an empty String should be deserialized as null ", actualTestUser.middleName); + assertNull(actualTestUser.middleName, "The column that contains an empty String should be deserialized as null "); assertEquals(expectedTestUser.lastName, actualTestUser.lastName); } + @Test public void testSimpleParseEmptyQuotedStringAsNonNull() throws IOException { // setup test data TestUser expectedTestUser = new TestUser(); @@ -93,6 +98,7 @@ public void testSimpleParseEmptyQuotedStringAsNonNull() throws IOException { } // [dataformats-text#222] + @Test public void testEmptyUnquotedStringAsNullNonPojo() throws Exception { String csv = "Grace,,Hopper"; @@ -117,6 +123,7 @@ public void testEmptyUnquotedStringAsNullNonPojo() throws Exception } } + @Test public void testEmptyQuotedStringAsNonNullNonPojo() throws Exception { String csv = "Grace,\"\",Hopper"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FormatDetectionTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FormatDetectionTest.java index caa03ed40..d379fd6bf 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FormatDetectionTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FormatDetectionTest.java @@ -2,14 +2,17 @@ import java.io.IOException; -import com.fasterxml.jackson.core.format.DataFormatDetector; -import com.fasterxml.jackson.core.format.DataFormatMatcher; -import com.fasterxml.jackson.core.format.MatchStrength; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.core.format.*; import com.fasterxml.jackson.dataformat.csv.CsvFactory; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.*; + public class FormatDetectionTest extends ModuleTestBase { + @Test public void testSimpleObjectWithHeader() throws IOException { CsvFactory f = new CsvFactory(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FuzzCSVReadTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FuzzCSVReadTest.java index 058f8e7c2..4f993efcd 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FuzzCSVReadTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/FuzzCSVReadTest.java @@ -2,8 +2,12 @@ import java.io.IOException; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.dataformat.csv.CsvMapper; +import static org.assertj.core.api.Assertions.fail; + /** * Collection of OSS-Fuzz found issues for CSV format module. */ @@ -12,6 +16,7 @@ public class FuzzCSVReadTest extends StreamingCSVReadTest private final CsvMapper CSV_MAPPER = mapperForCsv(); // https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=50036 + @Test public void testUTF8Decoding50036() throws Exception { byte[] INPUT = new byte[] { 0x20, (byte) 0xCD }; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IgnoreUnmappableTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IgnoreUnmappableTest.java index 2752d0cff..956501493 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IgnoreUnmappableTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IgnoreUnmappableTest.java @@ -1,12 +1,14 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.MappingIterator; - import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Test(s) for [dataformat-csv#95] */ @@ -19,6 +21,7 @@ static class StringPair { public String first, second; } + @Test public void testSimpleIgnoral() throws Exception { final String INPUT = "a,b,c,foo\nd,e\nf,g,h,i\n"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IntOverflow485Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IntOverflow485Test.java index 3d774a45f..343327984 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IntOverflow485Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/IntOverflow485Test.java @@ -1,13 +1,16 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.DatabindException; import com.fasterxml.jackson.databind.ObjectReader; - import com.fasterxml.jackson.dataformat.csv.CsvMapper; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.fail; + public class IntOverflow485Test extends ModuleTestBase { // [dataformats-text#485] @@ -23,6 +26,7 @@ static class Numbers485 { // [dataformats-text#485] // First test that regular parsing works + @Test public void testNoOverflow485() throws Exception { Numbers485 result = READER.readValue(csv485(13, 42L)); @@ -30,6 +34,7 @@ public void testNoOverflow485() throws Exception assertEquals(42L, result.longValue); } + @Test public void testIntOverflow() throws Exception { try { @@ -41,6 +46,7 @@ public void testIntOverflow() throws Exception } } + @Test public void testLongOverflow() throws Exception { try { diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ListField199Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ListField199Test.java index c607a9a74..66a0e7e94 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ListField199Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ListField199Test.java @@ -1,14 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.util.Collections; -import java.util.EnumSet; -import java.util.List; +import java.util.*; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.databind.ObjectReader; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; public class ListField199Test extends ModuleTestBase { @@ -50,6 +51,7 @@ static class ModelEnums199 { .withEscapeChar('"'); // [dataformats-text#199] + @Test public void testReadEmptyStringList() throws Exception { ObjectReader r = MAPPER.readerFor(ModelString199.class) @@ -72,6 +74,7 @@ public void testReadEmptyStringList() throws Exception } // [dataformats-text#199] + @Test public void testReadEmptyLongList() throws Exception { ObjectReader r = MAPPER.readerFor(ModelLong199.class) @@ -95,6 +98,7 @@ public void testReadEmptyLongList() throws Exception assertEquals(Collections.emptyList(), result.longs); } + @Test public void testReadEmptyEnumSet() throws Exception { ObjectReader r = MAPPER.readerFor(ModelEnums199.class) diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumns285Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumns285Test.java index 5fd2772ec..9e071f33e 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumns285Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumns285Test.java @@ -2,10 +2,13 @@ import java.util.Map; -import com.fasterxml.jackson.databind.MappingIterator; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Tests for cases where one more of schema-declared columns is * missing; various handling choices include "null-injection" @@ -29,6 +32,7 @@ public class MissingColumns285Test extends ModuleTestBase private final String CSV = "name\nRoger\n"; // [dataformats-text#285]: fail by default + @Test public void testFailOnMissingWithReorder() throws Exception { // Need to have it all inside try block since construction tries to read @@ -46,6 +50,7 @@ public void testFailOnMissingWithReorder() throws Exception } // [dataformats-text#285]: optionally allow + @Test public void testAllowMissingWithReorder() throws Exception { MappingIterator> it = MAPPER diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumnsTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumnsTest.java index 52ba66354..3d76de8f6 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumnsTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/MissingColumnsTest.java @@ -1,12 +1,14 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.ObjectReader; - import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Tests for cases where one more of schema-declared columns is * missing; various handling choices include "null-injection" @@ -32,6 +34,7 @@ static class ABC { private final CsvSchema SCHEMA_ABC = MAPPER.schemaFor(ABC.class); // by default, just... ignore + @Test public void testDefaultMissingHandling() throws Exception { ObjectReader r = MAPPER.readerFor(ABC.class).with(SCHEMA_ABC); @@ -62,6 +65,7 @@ public void testDefaultMissingHandling() throws Exception } // [dataformat-csv#137]: inject `null`s in place of missing + @Test public void testInjectMissingAsNulls() throws Exception { ObjectReader r = MAPPER.readerFor(ABC.class) @@ -92,6 +96,7 @@ public void testInjectMissingAsNulls() throws Exception } // [dataformat-csv#140]: report error for missing columns + @Test public void testFailOnMissingColumns() throws Exception { ObjectReader r = MAPPER.readerFor(ABC.class) diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NullReadTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NullReadTest.java index 1b8f43aba..86a315687 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NullReadTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NullReadTest.java @@ -1,8 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.databind.MappingIterator; +import com.fasterxml.jackson.databind.ObjectReader; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class NullReadTest extends ModuleTestBase { // [dataformats-text#330]: empty String as null @@ -20,6 +25,7 @@ static class Row330 { private final CsvMapper MAPPER = mapperForCsv(); // For [dataformat-csv#72]: recognize "null value" for reading too + @Test public void testReadNullValue72() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -50,6 +56,7 @@ public void testReadNullValue72() throws Exception assertEquals("Whatevs", result.desc); } + @Test public void testReadNullValueFromEmptyString() throws Exception { // first: empty String should work as default @@ -109,6 +116,7 @@ public void testReadNullValueFromEmptyString() throws Exception } // [dataformats-text#330]: empty String as null + @Test public void testEmptyStringAsNull330() throws Exception { CsvSchema headerSchema = CsvSchema.emptySchema().withHeader(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NumberDeserWithCSVTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NumberDeserWithCSVTest.java index 42732d603..72c689fa4 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NumberDeserWithCSVTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/NumberDeserWithCSVTest.java @@ -2,14 +2,14 @@ import java.math.BigDecimal; -import com.fasterxml.jackson.annotation.JsonUnwrapped; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.fasterxml.jackson.core.StreamReadConstraints; import com.fasterxml.jackson.databind.JsonMappingException; -import com.fasterxml.jackson.dataformat.csv.CsvFactory; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.*; // Tests copied from databind "JDKNumberDeserTest" (only a small subset) public class NumberDeserWithCSVTest extends ModuleTestBase @@ -51,6 +51,7 @@ static class NestedFloatHolder2784 { private final CsvMapper MAPPER = newObjectMapper(); // [databind#2784] + @Test public void testBigDecimalUnwrapped() throws Exception { CsvSchema schema = MAPPER.schemaFor(NestedBigDecimalHolder2784.class).withHeader() @@ -62,6 +63,7 @@ public void testBigDecimalUnwrapped() throws Exception assertEquals(new BigDecimal("5.123"), result.holder.value); } + @Test public void testVeryBigDecimalUnwrapped() throws Exception { final int len = 1200; @@ -79,11 +81,12 @@ public void testVeryBigDecimalUnwrapped() throws Exception .readValue(DOC); fail("expected JsonMappingException"); } catch (JsonMappingException jme) { - assertTrue("unexpected message: " + jme.getMessage(), - jme.getMessage().startsWith("Number value length (1200) exceeds the maximum allowed")); + assertTrue(jme.getMessage().startsWith("Number value length (1200) exceeds the maximum allowed"), + "unexpected message: " + jme.getMessage()); } } + @Test public void testVeryBigDecimalUnwrappedWithNumLenUnlimited() throws Exception { final int len = 1200; @@ -105,6 +108,7 @@ public void testVeryBigDecimalUnwrappedWithNumLenUnlimited() throws Exception assertEquals(new BigDecimal(value), result.holder.value); } + @Test public void testDoubleUnwrapped() throws Exception { CsvSchema schema = MAPPER.schemaFor(NestedDoubleHolder2784.class).withHeader() @@ -116,6 +120,7 @@ public void testDoubleUnwrapped() throws Exception assertEquals(Double.parseDouble("125.123456789"), result.holder.value); } + @Test public void testFloatUnwrapped() throws Exception { CsvSchema schema = MAPPER.schemaFor(NestedFloatHolder2784.class).withHeader() @@ -127,6 +132,7 @@ public void testFloatUnwrapped() throws Exception assertEquals(Float.parseFloat("125.123"), result.holder.value); } + @Test public void testFloatEdgeCase() throws Exception { CsvSchema schema = MAPPER.schemaFor(NestedFloatHolder2784.class).withHeader() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserAutoCloseTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserAutoCloseTest.java index 6913266a1..55c816194 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserAutoCloseTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserAutoCloseTest.java @@ -1,39 +1,42 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.StringReader; +import java.io.*; import java.nio.charset.StandardCharsets; -import org.junit.Assert; +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.core.StreamReadFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class ParserAutoCloseTest extends ModuleTestBase { + @Test public void testParseReaderWithAutoClose() throws IOException { ObjectMapper mapper = mapperForCsv(); CloseTrackerReader reader = new CloseTrackerReader("foo,bar"); mapper.readTree(reader); - Assert.assertEquals(true, reader.isClosed()); + assertEquals(true, reader.isClosed()); reader.close(); } + @Test public void testParseStreamWithAutoClose() throws IOException { ObjectMapper mapper = mapperForCsv(); CloseTrackerOutputStream stream = new CloseTrackerOutputStream("foo,bar"); mapper.readTree(stream); - Assert.assertEquals(true, stream.isClosed()); + assertEquals(true, stream.isClosed()); stream.close(); } + @Test public void testParseReaderWithoutAutoClose() throws IOException { ObjectMapper mapper = mapperBuilder() .disable(StreamReadFeature.AUTO_CLOSE_SOURCE) @@ -42,11 +45,12 @@ public void testParseReaderWithoutAutoClose() throws IOException { CloseTrackerReader reader = new CloseTrackerReader("foo,bar"); mapper.readTree(reader); - Assert.assertEquals(false, reader.isClosed()); + assertEquals(false, reader.isClosed()); reader.close(); } + @Test public void testParseStreamWithoutAutoClose() throws IOException { ObjectMapper mapper = mapperBuilder() .disable(StreamReadFeature.AUTO_CLOSE_SOURCE) @@ -55,7 +59,7 @@ public void testParseStreamWithoutAutoClose() throws IOException { CloseTrackerOutputStream stream = new CloseTrackerOutputStream("foo,bar"); mapper.readTree(stream); - Assert.assertEquals(false, stream.isClosed()); + assertEquals(false, stream.isClosed()); stream.close(); } diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserLocation483Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserLocation483Test.java index 067903ec0..b16b7b412 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserLocation483Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserLocation483Test.java @@ -1,18 +1,21 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.util.*; +import java.util.List; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.core.JacksonException; import com.fasterxml.jackson.databind.MappingIterator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; public class ParserLocation483Test extends ModuleTestBase { private final CsvMapper MAPPER = mapperForCsv(); // [dataformats-text#483]: Location incorrect + @Test public void testAsSequence() throws Exception { try (MappingIterator> reader = MAPPER diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserTrimSpacesTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserTrimSpacesTest.java index 8329ffb49..91b16a086 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserTrimSpacesTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserTrimSpacesTest.java @@ -1,10 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class ParserTrimSpacesTest extends ModuleTestBase { /* @@ -25,6 +28,7 @@ protected static class Entry { */ // Test to verify default behavior of not trimming spaces + @Test public void testNonTrimming() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -62,6 +66,7 @@ public void testNonTrimming() throws Exception it.close(); } + @Test public void testTrimming() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -94,6 +99,7 @@ public void testTrimming() throws Exception } // for [dataformat-csv#100]: Do not eat tabs when trimming space + @Test public void testTrimmingTabSeparated() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserWithHeaderTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserWithHeaderTest.java index 2c48ca298..e91aa2a6d 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserWithHeaderTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ParserWithHeaderTest.java @@ -1,12 +1,16 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.util.*; +import java.util.ArrayList; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class ParserWithHeaderTest extends ModuleTestBase { @JsonPropertyOrder({ "age", "name", "cute" }) @@ -24,6 +28,7 @@ protected static class Entry { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleHeader() throws Exception { try (CsvParser parser = (CsvParser) MAPPER.createParser( @@ -75,6 +80,7 @@ public void testSimpleHeader() throws Exception } } + @Test public void testSimpleQuotes() throws Exception { CsvSchema schema = CsvSchema.emptySchema().withHeader(); @@ -85,6 +91,7 @@ public void testSimpleQuotes() throws Exception assertTrue(entry.cute); } + @Test public void testSkipFirstDataLine() throws Exception { CsvSchema schema = MAPPER.schemaFor(Entry.class).withSkipFirstDataRow(true); @@ -100,6 +107,7 @@ public void testSkipFirstDataLine() throws Exception it.close(); } + @Test public void testLongHeader() throws Exception { StringBuilder sb = new StringBuilder(650); @@ -134,6 +142,7 @@ public void testLongHeader() throws Exception p.close(); } + @Test public void testLongColumnName() throws Exception { StringBuilder sb = new StringBuilder(650); @@ -167,6 +176,7 @@ public void testLongColumnName() throws Exception /********************************************************************** */ + @Test public void testInvalidMissingHeader() throws Exception { try { diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadBracketedArray442Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadBracketedArray442Test.java index 6ee1d0281..d1f17bc55 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadBracketedArray442Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadBracketedArray442Test.java @@ -3,16 +3,15 @@ import java.net.URL; import java.nio.charset.StandardCharsets; -import com.fasterxml.jackson.annotation.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.exc.StreamReadException; import com.fasterxml.jackson.databind.MappingIterator; - -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; +import com.fasterxml.jackson.dataformat.csv.*; import com.fasterxml.jackson.dataformat.csv.CsvSchema.ColumnType; -import com.fasterxml.jackson.dataformat.csv.CsvValueDecorator; -import com.fasterxml.jackson.dataformat.csv.CsvValueDecorators; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + +import static org.junit.jupiter.api.Assertions.*; // [dataformats-text#442] public class ReadBracketedArray442Test extends ModuleTestBase @@ -47,6 +46,7 @@ static class Article { .getBytes(StandardCharsets.UTF_8); // [dataformats-text#442] + @Test public void testBracketsReadAutoSchema() throws Exception { final CsvSchema schema1 = _automaticSchema(true); @@ -59,6 +59,7 @@ public void testBracketsReadAutoSchema() throws Exception } // [dataformats-text#442] + @Test public void testBracketsManualSchemaArray() throws Exception { final CsvSchema schema = _manualSchema(ColumnType.ARRAY, true); @@ -67,6 +68,7 @@ public void testBracketsManualSchemaArray() throws Exception } // [dataformats-text#442] + @Test public void testBracketsManualSchemaString() throws Exception { final CsvSchema schema = _manualSchema(ColumnType.STRING, true); @@ -80,6 +82,7 @@ public void testBracketsManualSchemaString() throws Exception /********************************************************************** */ + @Test public void testBracketReadAutoSchemaFail() throws Exception { final CsvSchema schema = _automaticSchema(true); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadSequencesTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadSequencesTest.java index b7620a285..170cb7031 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadSequencesTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/ReadSequencesTest.java @@ -1,14 +1,17 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.io.*; +import java.io.IOException; import java.util.*; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Tests for verifying behavior of enclosing input stream as * a logical array. @@ -42,6 +45,7 @@ public String toString() { */ // Test using non-wrapped sequence of entries + @Test public void testAsSequence() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -67,6 +71,7 @@ public void testAsSequence() throws Exception } // Test using sequence of entries wrapped in a logical array. + @Test public void testAsWrappedArray() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -83,6 +88,7 @@ public void testAsWrappedArray() throws Exception } // Test for teasing out buffer-edge conditions... + @Test public void testLongerUnwrapped() throws Exception { // how many? about 10-20 bytes per entry, so try to get at ~100k -> about 10k entries @@ -114,6 +120,7 @@ public void testLongerUnwrapped() throws Exception } // Verify that code sample from the page works: + @Test public void testRawObjectArrays() throws Exception { CsvMapper mapper = new CsvMapper(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SequenceRecoveryTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SequenceRecoveryTest.java index e4b203384..6dc43debb 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SequenceRecoveryTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SequenceRecoveryTest.java @@ -1,12 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.MappingIterator; - import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class SequenceRecoveryTest extends ModuleTestBase { @JsonPropertyOrder({"x", "y"}) @@ -37,6 +40,7 @@ public String toString() { private final CsvMapper MAPPER = new CsvMapper(); + @Test public void testSequenceRecovery() throws Exception { // can not reuse shared instance because we need: @@ -96,6 +100,7 @@ public void testSequenceRecovery() throws Exception } // for [dataformat-csv#91]: ensure recovery works for extra columns + @Test public void testRecoverFromExtraColumns91() throws Exception { CsvSchema schema = MAPPER.schemaFor(Entry.class); @@ -142,6 +147,7 @@ public void testRecoverFromExtraColumns91() throws Exception } // for [dataformat-csv#91]: ensure recovery works for extra columns + @Test public void testRecoveryFromMissingQuote91() throws Exception { CsvSchema schema = MAPPER.schemaFor(IdDesc.class); @@ -183,6 +189,7 @@ protected static class ThreeString { // Additional test for [dataformat-csv#91]: should skip only line with error // and do not fail on next line + @Test public void testRecoveryFromUnclosedQuotes() throws Exception { String toParse = a2q( diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines15Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines15Test.java index 6af9f824e..3819e53a2 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines15Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines15Test.java @@ -1,12 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.ObjectReader; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; -import static org.junit.Assert.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertArrayEquals; +import static org.junit.jupiter.api.Assertions.assertEquals; // for [dataformats-text#15]: Allow skipping of empty lines public class SkipEmptyLines15Test extends ModuleTestBase { @@ -25,6 +26,7 @@ protected static class Entry { } // for [dataformats-text#15]: Allow skipping of empty lines + @Test public void testSkipEmptyLinesFeature() throws Exception { final String CSV = "1,\"xyz\"\n\ntrue,\n"; @@ -72,6 +74,7 @@ public void testSkipEmptyLinesFeature() throws Exception assertEquals("", row[1]); } + @Test public void testCsvWithEmptyLineSkipBlankLinesFeatureDisabled() throws Exception { String[][] rows = mapperForCsvAsArray().readValue(CSV_WITH_EMPTY_LINE); // First, verify default behavior: @@ -82,6 +85,7 @@ public void testCsvWithEmptyLineSkipBlankLinesFeatureDisabled() throws Exception ), rows); } + @Test public void testCsvWithEmptyLineSkipBlankLinesFeatureEnabled() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) @@ -94,6 +98,7 @@ public void testCsvWithEmptyLineSkipBlankLinesFeatureEnabled() throws Exception } + @Test public void testCsvWithBlankLineSkipBlankLinesFeatureDisabled() throws Exception { String[][] rows = mapperForCsvAsArray() .readValue(CSV_WITH_BLANK_LINE); @@ -105,6 +110,7 @@ public void testCsvWithBlankLineSkipBlankLinesFeatureDisabled() throws Exception ), rows); } + @Test public void testCsvWithBlankLineSkipBlankLinesFeatureEnabled() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) @@ -116,6 +122,7 @@ public void testCsvWithBlankLineSkipBlankLinesFeatureEnabled() throws Exception ), rows); } + @Test public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureDisabled() throws Exception { String[][] rows = mapperForCsvAsArray() .readValue(CSV_WITH_BLANK_LINE_AND_COMMENT); @@ -131,6 +138,7 @@ public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureDisabled() throws // 14-Apr-2020, tatu: Due to [dataformats-text#191], can not retain leading spaces // when trimming empty lines and/or comments, so test changed for 2.11 + @Test public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureEnabled() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) @@ -145,6 +153,7 @@ public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureEnabled() throws ), rows); } + @Test public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureEnabledAndAllowComments() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) @@ -158,6 +167,7 @@ public void testCsvWithBlankLineAndCommentSkipBlankLinesFeatureEnabledAndAllowCo ), rows); } + @Test public void testCsvWithFirstBlankLineSkipBlankLinesFeatureDisabled() throws Exception { String[][] rows = mapperForCsvAsArray() .readValue(CSV_WITH_FIRST_BLANK_LINE); @@ -169,6 +179,7 @@ public void testCsvWithFirstBlankLineSkipBlankLinesFeatureDisabled() throws Exce ), rows); } + @Test public void testCsvWithFirstBlankLineSkipBlankLinesFeatureEnabled() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) @@ -181,6 +192,7 @@ public void testCsvWithFirstBlankLineSkipBlankLinesFeatureEnabled() throws Excep } + @Test public void testCsvWithTrailingBlankLineSkipBlankLinesFeatureDisabled() throws Exception { String[][] rows = mapperForCsvAsArray() .readValue(CSV_WITH_TRAILING_BLANK_LINES); @@ -193,6 +205,7 @@ public void testCsvWithTrailingBlankLineSkipBlankLinesFeatureDisabled() throws E ), rows); } + @Test public void testCsvWithTrailingBlankLineSkipBlankLinesFeatureEnabled() throws Exception { String[][] rows = mapperForCsvAsArray() .with(CsvParser.Feature.SKIP_EMPTY_LINES) diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines191Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines191Test.java index 1a7a3da14..42b1d1683 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines191Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/SkipEmptyLines191Test.java @@ -1,21 +1,17 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.io.Reader; -import java.io.StringReader; -import java.io.StringWriter; -import java.util.List; -import java.util.Map; -import java.util.Random; +import java.io.*; +import java.util.*; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.ObjectReader; +import com.fasterxml.jackson.dataformat.csv.*; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.fail; // [dataformats-text#191] // [dataformats-text#174] @@ -58,6 +54,7 @@ public String toString() { private final static CsvMapper MAPPER = new CsvMapper(); // [dataformats-text#174] + @Test public void testEmptyLines174() throws Exception { final StringWriter sw = new StringWriter(50000); @@ -98,6 +95,7 @@ private String randomString(Random rnd) { } // [dataformats-text#191]: IndexArrayOutOfBounds at 4000 + @Test public void testBigCsvFile() throws Exception { final String COL_1 = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/StreamingCSVReadTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/StreamingCSVReadTest.java index 0a034e8a8..1337368ba 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/StreamingCSVReadTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/StreamingCSVReadTest.java @@ -1,14 +1,16 @@ package com.fasterxml.jackson.dataformat.csv.deser; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.StringWriter; +import java.io.*; + +import org.junit.jupiter.api.Test; -import com.fasterxml.jackson.core.*; import com.fasterxml.jackson.core.JsonParser.NumberType; +import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.core.io.SerializedString; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Container for some low-level tests that use parser directly; * needed for exercising certain methods that are difficult to @@ -29,6 +31,7 @@ protected CsvFactory csvFactory() { return CSV_F; } + @Test public void testIntRead() throws Exception { _testInts(1, 59, -8); @@ -37,6 +40,7 @@ public void testIntRead() throws Exception _testInts(Integer.MAX_VALUE, Integer.MIN_VALUE, 3); } + @Test public void testLongRead() throws Exception { _testLongs(1L, -3L); @@ -44,6 +48,7 @@ public void testLongRead() throws Exception _testLongs(Long.MIN_VALUE, Long.MAX_VALUE); } + @Test public void testFloatRead() throws Exception { _testDoubles(1.0, 125.375, -900.5); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserEscapes.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserEscapes.java index 192ca00b9..1fdb53dc2 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserEscapes.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserEscapes.java @@ -3,13 +3,14 @@ import java.util.Arrays; import java.util.List; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.MappingIterator; -import com.fasterxml.jackson.dataformat.csv.CsvGenerator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class TestParserEscapes extends ModuleTestBase { @@ -24,6 +25,7 @@ protected static class Desc { /********************************************************************** */ + @Test public void testSimpleEscapesInQuotes() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -40,6 +42,7 @@ public void testSimpleEscapesInQuotes() throws Exception * but since escape themselves are not officially supported, let's allow * them for now (can add a config setting if need be) */ + @Test public void testSimpleEscapesInUnquoted() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -52,6 +55,7 @@ public void testSimpleEscapesInUnquoted() throws Exception assertEquals("Desc with\nlinefeed", result.desc); } + @Test public void testEscapesAtStartInUnquoted() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -65,6 +69,7 @@ public void testEscapesAtStartInUnquoted() throws Exception } // [dataformats-text#374]: suspected bug, was missing enabling of escape char + @Test public void testEscaping374() throws Exception { CsvSchema schema = CsvSchema.emptySchema().withColumnSeparator(';') diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserNoSchema.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserNoSchema.java index 293b4698a..38e85ca50 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserNoSchema.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserNoSchema.java @@ -3,9 +3,13 @@ import java.util.List; import java.util.Map; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + /** * Test to verify that CSV content can be parsed without schema * (or more precisely: using Schema that does not define any columns); @@ -20,6 +24,7 @@ public class TestParserNoSchema extends ModuleTestBase /********************************************************************** */ + @Test public void testUntypedAsSequence() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -58,6 +63,7 @@ public void testUntypedAsSequence() throws Exception it.close(); } + @Test public void testUntypedAsObjectArray() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -84,6 +90,7 @@ public void testUntypedAsObjectArray() throws Exception assertEquals("", row.get(1)); } + @Test public void testUntypedAsStringArray() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -108,6 +115,7 @@ public void testUntypedAsStringArray() throws Exception assertEquals("", row[1]); } + @Test public void testUntypedViaReadValues() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -135,6 +143,7 @@ public void testUntypedViaReadValues() throws Exception it.close(); } + @Test public void testUntypedWithHeaderAsMap() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -160,6 +169,7 @@ public void testUntypedWithHeaderAsMap() throws Exception /* Let's also allow varying number of columns, if no * schema has been defined. */ + @Test public void testUntypedAsSequenceVarLengths() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -196,6 +206,7 @@ public void testUntypedAsSequenceVarLengths() throws Exception } // [Issue#54] + @Test public void testDelimiterAtBufferBoundary() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserQuotes.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserQuotes.java index 8cdb89d90..bf7bd1234 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserQuotes.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserQuotes.java @@ -1,9 +1,14 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.databind.*; +import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + + public class TestParserQuotes extends ModuleTestBase { @JsonPropertyOrder({"age", "name"}) @@ -29,6 +34,7 @@ protected static class ThreeString { /********************************************************************** */ + @Test public void testSimpleQuotes() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -38,6 +44,7 @@ public void testSimpleQuotes() throws Exception assertEquals("Joe \"Sixpack\" Paxson", user.name); } + @Test public void testSimpleMultiLine() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -58,6 +65,7 @@ public void testSimpleMultiLine() throws Exception } // [dataformat-csv#32] + @Test public void testDisablingQuotes() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -90,6 +98,7 @@ public void testDisablingQuotes() throws Exception } // for [dataformat-csv#117] + @Test public void testDefaultSimpleQuotes() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserStrictQuoting.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserStrictQuoting.java index 32f03f333..d8ceb156d 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserStrictQuoting.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserStrictQuoting.java @@ -1,8 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; + // Tests for [dataformat-csv#26] public class TestParserStrictQuoting extends ModuleTestBase { @@ -23,6 +28,7 @@ public AB(String a, String b) { /********************************************************************** */ + @Test public void testStrictQuoting() throws Exception { final String NUMS = "12345 6789"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserWorkarounds.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserWorkarounds.java index 334ef90cc..451361c80 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserWorkarounds.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TestParserWorkarounds.java @@ -2,13 +2,15 @@ import java.util.Map; -import com.fasterxml.jackson.core.*; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.*; - import com.fasterxml.jackson.dataformat.csv.CsvSchema; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.*; + /** * Tests that verify that various minor workarounds * work as expected. @@ -19,6 +21,7 @@ public class TestParserWorkarounds extends ModuleTestBase * Test for [#1]; in case we get an extra empty element, * we can just ignore it. */ + @Test public void testIgnoringOptionalTrailing() throws Exception { ObjectMapper mapper = mapperForCsv(); @@ -62,6 +65,7 @@ public void testIgnoringOptionalTrailing() throws Exception } // also ensure [databind-csv#1] also works appropriately for failing case + @Test public void testOptionalTrailFailing() throws Exception { ObjectMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TrailingCommaCSVTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TrailingCommaCSVTest.java index c32fcebbc..e5ab3a7ff 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TrailingCommaCSVTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/TrailingCommaCSVTest.java @@ -1,12 +1,14 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.JsonMappingException; import com.fasterxml.jackson.databind.MappingIterator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvParser; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.*; + public class TrailingCommaCSVTest extends ModuleTestBase { @@ -22,6 +24,7 @@ static class Person { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testDisallowTrailingComma() throws Exception { final String INPUT = "s,t\nd,e,\n"; @@ -45,6 +48,7 @@ public void testDisallowTrailingComma() throws Exception // [dataformats-text#204]: should also work for header line + @Test public void testWithTrailingHeaderComma() throws Exception { final String INPUT = "name,age,\n" + diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/UnwrappingWithCSVTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/UnwrappingWithCSVTest.java index 76c3aef01..a30ea77ed 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/UnwrappingWithCSVTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/deser/UnwrappingWithCSVTest.java @@ -1,11 +1,14 @@ package com.fasterxml.jackson.dataformat.csv.deser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.fasterxml.jackson.databind.ObjectMapper; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; // for #12 public class UnwrappingWithCSVTest extends ModuleTestBase @@ -46,6 +49,7 @@ public Unwrapping(String str, int x, int y) { * Simple test to verify that explicit schema mapping works fine * with unwrapped entities */ + @Test public void testSimpleUnwrappingRoundtrip() throws Exception { final String CSV = "Joe,15,27\n"; @@ -75,6 +79,7 @@ public void testSimpleUnwrappingRoundtrip() throws Exception * available via BeanProperty/POJOPropertyBuilder. But it needs to be * made; and when this occurs, we can handle this case reasonably well. */ + @Test public void testSimpleWithAutoSchema() throws Exception { final String CSV = "Henry,28,12\n"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MappingIteratorEnd9Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MappingIteratorEnd9Test.java index 0d8e16449..ba238c822 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MappingIteratorEnd9Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MappingIteratorEnd9Test.java @@ -1,11 +1,17 @@ package com.fasterxml.jackson.dataformat.csv.failing; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + + public class MappingIteratorEnd9Test extends ModuleTestBase { // for [dataformats-text#9] (was [dataformat-csv#119]) + @Test public void testDefaultSimpleQuotes() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MissingNullsOnObjectArrayWrite10Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MissingNullsOnObjectArrayWrite10Test.java index 6900aafef..4b154fcc6 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MissingNullsOnObjectArrayWrite10Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/MissingNullsOnObjectArrayWrite10Test.java @@ -2,17 +2,20 @@ import java.io.StringWriter; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.databind.SequenceWriter; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; public class MissingNullsOnObjectArrayWrite10Test extends ModuleTestBase { private final CsvMapper MAPPER = mapperForCsv(); // for [dataformats-text#10] + @Test public void testNullsOnObjectArrayWrites2Col() throws Exception { CsvSchema schema = CsvSchema.builder() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/NullWriting116Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/NullWriting116Test.java index 0555ed7ad..e69d1a041 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/NullWriting116Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/NullWriting116Test.java @@ -2,15 +2,20 @@ import java.io.StringWriter; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.fasterxml.jackson.databind.SequenceWriter; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class NullWriting116Test extends ModuleTestBase { private final CsvMapper csv = mapperForCsv(); // [dataformat#116] + @Test public void testWithObjectArray() throws Exception { CsvSchema schema = CsvSchema.builder() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/ParserQuotes19Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/ParserQuotes19Test.java index ce5776087..8eee1f957 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/ParserQuotes19Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/ParserQuotes19Test.java @@ -1,9 +1,12 @@ package com.fasterxml.jackson.dataformat.csv.failing; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + // for [dataformat-csv#19] public class ParserQuotes19Test extends ModuleTestBase { @@ -19,6 +22,7 @@ protected static class ThreeString { */ // For #19: need to handle spaces outside quotes, even if not trimming? + @Test public void testSimpleQuotesWithSpaces() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/UnicodeCSVRead497Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/UnicodeCSVRead497Test.java index 2c71ea764..1d865941c 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/UnicodeCSVRead497Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/failing/UnicodeCSVRead497Test.java @@ -2,9 +2,13 @@ import java.nio.charset.StandardCharsets; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; -import com.fasterxml.jackson.dataformat.csv.*; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.dataformat.csv.CsvMapper; +import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + +import static org.junit.jupiter.api.Assertions.*; // [dataformats-text#497]: 3-byte UTF-8 character at end of content public class UnicodeCSVRead497Test extends ModuleTestBase @@ -12,6 +16,7 @@ public class UnicodeCSVRead497Test extends ModuleTestBase private final CsvMapper MAPPER = mapperForCsv(); // [dataformats-text#497] + @Test public void testUnicodeAtEnd() throws Exception { StringBuilder sb = new StringBuilder(4001); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/JsonViewFilteringTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/JsonViewFilteringTest.java index 4e71f7df6..7dd2cb19e 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/JsonViewFilteringTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/JsonViewFilteringTest.java @@ -5,17 +5,14 @@ import java.util.Arrays; import java.util.List; -import com.fasterxml.jackson.annotation.JsonFilter; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.annotation.JsonView; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.*; import com.fasterxml.jackson.databind.ser.impl.SimpleBeanPropertyFilter.FilterExceptFilter; import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; +import com.fasterxml.jackson.dataformat.csv.*; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvReadException; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.*; public class JsonViewFilteringTest extends ModuleTestBase { @@ -63,6 +60,7 @@ public static class Company { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testWithJsonView() throws Exception { CsvSchema schema = MAPPER.schemaFor(Bean.class).withLineSeparator("\n").withHeader(); @@ -83,6 +81,7 @@ public void testWithJsonView() throws Exception assertEquals("7", result.b); } + @Test public void testSchemaWithJsonViewSerialization() throws Exception { CsvSchema schema = MAPPER.schemaForWithView(Bean.class, ViewB.class).withLineSeparator("\n").withHeader(); @@ -95,6 +94,7 @@ public void testSchemaWithJsonViewSerialization() throws Exception assertNull(br.readLine()); } + @Test public void testSchemaWithJsonViewDeserialization() throws Exception { CsvSchema schema = MAPPER.schemaForWithView(Bean.class, ViewB.class).withLineSeparator("\n").withHeader(); @@ -107,6 +107,7 @@ public void testSchemaWithJsonViewDeserialization() throws Exception assertEquals("7", result.b); } + @Test public void testSchemaWithJsonViewDeserializationFail() throws Exception { CsvSchema schema = MAPPER.schemaForWithView(Bean.class, ViewB.class).withLineSeparator("\n").withHeader(); @@ -119,6 +120,7 @@ public void testSchemaWithJsonViewDeserializationFail() throws Exception } } + @Test public void testWithJsonFilter() throws Exception { CsvSchema schema = MAPPER.schemaFor(Company.class).withLineSeparator("\n").withHeader(); @@ -141,6 +143,7 @@ public void testWithJsonFilter() throws Exception assertNull(br.readLine()); } + @Test public void testWithJsonFilterFieldSuppressed() throws Exception { final CsvSchema schema = new CsvSchema.Builder() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/StreamingDecoratorsTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/StreamingDecoratorsTest.java index 0258c808a..5805d7663 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/StreamingDecoratorsTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/filter/StreamingDecoratorsTest.java @@ -3,14 +3,19 @@ import java.io.*; import java.util.Arrays; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.MappingIterator; import com.fasterxml.jackson.databind.SequenceWriter; import com.fasterxml.jackson.dataformat.csv.*; import com.fasterxml.jackson.dataformat.csv.testutil.PrefixInputDecorator; import com.fasterxml.jackson.dataformat.csv.testutil.PrefixOutputDecorator; +import static org.junit.jupiter.api.Assertions.*; + public class StreamingDecoratorsTest extends ModuleTestBase { + @Test public void testInputDecorators() throws IOException { final byte[] DOC = utf8("foo,"); @@ -41,6 +46,7 @@ public void testInputDecorators() throws IOException } } + @Test public void testOutputDecorators() throws IOException { final byte[] DOC = utf8("a,b\n"); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/fuzz/CsvFuzzTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/fuzz/CsvFuzzTest.java index 82e727018..c67f2e87e 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/fuzz/CsvFuzzTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/fuzz/CsvFuzzTest.java @@ -1,12 +1,16 @@ package com.fasterxml.jackson.dataformat.csv.fuzz; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.core.JacksonException; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + public class CsvFuzzTest extends ModuleTestBase { // https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=50402 + @Test public void testReadBoundary50402() throws Exception { ObjectMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/CsvSchemaTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/CsvSchemaTest.java index 7aee09f4a..ba16d5a8d 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/CsvSchemaTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/CsvSchemaTest.java @@ -2,13 +2,16 @@ import java.util.*; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; import com.fasterxml.jackson.dataformat.csv.CsvSchema.Column; +import static org.junit.jupiter.api.Assertions.*; + + public class CsvSchemaTest extends ModuleTestBase { @JsonPropertyOrder({ "a", "b", "c", "d" }) @@ -62,6 +65,7 @@ static class PointWithExplicitIndices115 { final CsvMapper MAPPER = mapperForCsv(); + @Test public void testUserWithTypedAutoSchema() throws Exception { CsvSchema schema = MAPPER.typedSchemaFor(FiveMinuteUser.class); @@ -101,6 +105,7 @@ public void testUserWithTypedAutoSchema() throws Exception assertEquals(4, b.build().size()); } + @Test public void testArrayWithTypedAutoSchema() throws Exception { CsvSchema schema = MAPPER.typedSchemaFor(ArrayWrapper.class); @@ -126,6 +131,7 @@ public void testArrayWithTypedAutoSchema() throws Exception } // for [dataformat-csv#42] + @Test public void testReorderByName() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -138,6 +144,7 @@ public void testReorderByName() throws Exception } // for [dataformat-csv#42] + @Test public void testReorderWithComparator() throws Exception { CsvSchema schema = MAPPER.schemaFor(Mixed.class); @@ -147,6 +154,7 @@ public void testReorderWithComparator() throws Exception _verifyLinks(schema); } + @Test public void testColumnDescForEmptyScheme() throws Exception { CsvSchema schema = CsvSchema.emptySchema(); @@ -169,6 +177,7 @@ private void _verifyLinks(CsvSchema schema) } // For [dataformat-csv#74]: problems applying default do-sort handling + @Test public void testSchemaWithOrdering() throws Exception { CsvSchema schema1 = MAPPER.schemaFor(Point.class); @@ -179,6 +188,7 @@ public void testSchemaWithOrdering() throws Exception } // For pull request 89 + @Test public void testSchemaWithReordering() { // Checks flags are handled properly through builder, getters @@ -194,6 +204,7 @@ public void testSchemaWithReordering() } // For [dataformat-csv#142]: append columns from POJOs + @Test public void testSchemaComposition() throws Exception { CsvSchema pointSchema = MAPPER.typedSchemaFor(Point.class); @@ -231,6 +242,7 @@ public void testSchemaComposition() throws Exception } // For [dataformat-csv#115]: honor JsonProperty index + @Test public void testSchemaWithExplicitIndices() { CsvSchema pointSchema = MAPPER.typedSchemaFor(PointWithExplicitIndices115.class); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/PropertyOrder74Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/PropertyOrder74Test.java index b0eeadad3..33e9178aa 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/PropertyOrder74Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/PropertyOrder74Test.java @@ -1,10 +1,12 @@ package com.fasterxml.jackson.dataformat.csv.schema; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; // For [dataformat-csv#74]: problems applying default do-sort handling public class PropertyOrder74Test extends ModuleTestBase @@ -17,6 +19,7 @@ static class Point { @JsonPropertyOrder() public static class PointWithAnnotation extends Point {} + @Test public void testSchemaWithOrdering() throws Exception { final CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaDefaultView308Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaDefaultView308Test.java index 9d24ddd44..7d594a273 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaDefaultView308Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaDefaultView308Test.java @@ -2,12 +2,16 @@ import java.util.*; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonView; import com.fasterxml.jackson.databind.MapperFeature; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertTrue; + public class SchemaDefaultView308Test extends ModuleTestBase { @@ -63,12 +67,13 @@ private void _verifyExpected(final CsvMapper csvMapper, final Class view, fin final CsvSchema schema = csvMapper.schemaForWithView(POJO.getClass(), view); schema.rebuild().getColumns().forEachRemaining(c -> assertTrue(actualCsvNames.add(c.getName()))); assertEquals( - view == null ? "null" : view.getSimpleName() + " misses fields/columns", new HashSet<>(Arrays.asList(expectedNames)), - actualCsvNames - ); + actualCsvNames, + view == null ? "null" : view.getSimpleName() + " misses fields/columns" + ); } + @Test public void testSchemaWithImplicitDefaultViewAndDefaultViewInclusionDisabled() { CsvMapper csvMapper = _createMapper(false, null); @@ -78,6 +83,7 @@ public void testSchemaWithImplicitDefaultViewAndDefaultViewInclusionDisabled() _verifyExpected(csvMapper, OtherView.class, "text"); } + @Test public void testSchemaWithDefaultBaseViewAndDefaultViewInclusionDisabled() { CsvMapper csvMapper = _createMapper(false, BaseViewMixIn.class); @@ -87,6 +93,7 @@ public void testSchemaWithDefaultBaseViewAndDefaultViewInclusionDisabled() _verifyExpected(csvMapper, OtherView.class, "text"); } + @Test public void testSchemaWithDefaultExtendedViewAndDefaultViewInclusionDisabled() { CsvMapper csvMapper = _createMapper(false, ExtendedViewMixIn.class); @@ -96,6 +103,7 @@ public void testSchemaWithDefaultExtendedViewAndDefaultViewInclusionDisabled() _verifyExpected(csvMapper, OtherView.class, "text"); } + @Test public void testSchemaWithDefaultOtherViewAndDefaultViewInclusionDisabled() { CsvMapper csvMapper = _createMapper(false, OtherViewMixIn.class); @@ -105,6 +113,7 @@ public void testSchemaWithDefaultOtherViewAndDefaultViewInclusionDisabled() _verifyExpected(csvMapper, OtherView.class, "flag", "text"); } + @Test public void testSchemaWithImplicitDefaultViewAndDefaultViewInclusionEnabled() { CsvMapper csvMapper = _createMapper(true, null); @@ -114,6 +123,7 @@ public void testSchemaWithImplicitDefaultViewAndDefaultViewInclusionEnabled() _verifyExpected(csvMapper, OtherView.class, "flag", "text"); } + @Test public void testSchemaWithDefaultBaseViewAndDefaultViewInclusionEnabled() { CsvMapper csvMapper = _createMapper(true, BaseViewMixIn.class); @@ -123,6 +133,7 @@ public void testSchemaWithDefaultBaseViewAndDefaultViewInclusionEnabled() _verifyExpected(csvMapper, OtherView.class, "text"); } + @Test public void testSchemaWithDefaultExtendedViewAndDefaultViewInclusionEnabled() { CsvMapper csvMapper = _createMapper(true, ExtendedViewMixIn.class); @@ -132,6 +143,7 @@ public void testSchemaWithDefaultExtendedViewAndDefaultViewInclusionEnabled() _verifyExpected(csvMapper, OtherView.class, "text"); } + @Test public void testSchemaWithDefaultOtherViewAndDefaultViewInclusionEnabled() { CsvMapper csvMapper = _createMapper(true, OtherViewMixIn.class); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaFromBuilder207Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaFromBuilder207Test.java index 4d6ac29a4..0396ea48d 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaFromBuilder207Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/schema/SchemaFromBuilder207Test.java @@ -1,9 +1,11 @@ package com.fasterxml.jackson.dataformat.csv.schema; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.*; // Trying to reproduce [dataformats-text#207], with mixed success public class SchemaFromBuilder207Test extends ModuleTestBase @@ -51,6 +53,7 @@ public ValueClassXY build() { private final CsvMapper MAPPER = newObjectMapper(); + @Test public void testSimple() throws Exception { CsvSchema schema = MAPPER.schemaFor(ValueClassXY.class).withHeader(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/ArrayWriteTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/ArrayWriteTest.java index 2ea8a7744..2dce4e8b2 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/ArrayWriteTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/ArrayWriteTest.java @@ -1,9 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + + // Tests for verifying that it is possible to write "simple" arrays // (ones with scalar serializations) as CSV public class ArrayWriteTest extends ModuleTestBase @@ -38,6 +42,7 @@ static class Pojo90 { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleExplicit() throws Exception { ValueEntry input = new ValueEntry("foo", "stuff", 1, 2, 3); @@ -47,6 +52,7 @@ public void testSimpleExplicit() throws Exception assertEquals("foo,1;2;3,stuff", csv); } + @Test public void testSeparatorOverride() throws Exception { ValueEntry input = new ValueEntry("foo", "stuff", 1, 2, 3); @@ -61,6 +67,7 @@ public void testSeparatorOverride() throws Exception assertEquals("foo,\"1 2 3\",stuff", csv); } + @Test public void testArraysWithNulls() throws Exception { Pojo90 value = new Pojo90(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorQuotingTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorQuotingTest.java index a49bfc534..a3f1c9133 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorQuotingTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorQuotingTest.java @@ -1,7 +1,12 @@ package com.fasterxml.jackson.dataformat.csv.ser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + + public class CSVGeneratorQuotingTest extends ModuleTestBase { /* @@ -13,6 +18,7 @@ public class CSVGeneratorQuotingTest extends ModuleTestBase private final CsvMapper MAPPER = mapperForCsv(); // [dataformats-text#220] + @Test public void testQuotingOfLinefeedsStd() throws Exception { final CsvSchema schema = MAPPER.schemaFor(IdDesc.class) @@ -39,6 +45,7 @@ public void testQuotingOfLinefeedsStd() throws Exception assertEquals("\"12\n3\",Foo\n", csv); } + @Test public void testQuotingOfLinefeedsCustom() throws Exception { // '-' is bigger than max('"', ','): diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorTest.java index 64723bed8..b8117f7b0 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVGeneratorTest.java @@ -5,17 +5,18 @@ import java.math.BigDecimal; import java.math.BigInteger; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonGenerator; - import com.fasterxml.jackson.core.StreamWriteFeature; - import com.fasterxml.jackson.databind.DatabindException; import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.databind.node.ObjectNode; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.*; + public class CSVGeneratorTest extends ModuleTestBase { @JsonPropertyOrder({"id", "amount"}) @@ -74,6 +75,7 @@ public NumberEntry(String id, T amount, boolean enabled) { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleExplicit() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -99,12 +101,14 @@ public void testSimpleExplicit() throws Exception .writeValueAsString(user)); } + @Test public void testSimpleWithAutoSchema() throws Exception { _testSimpleWithAutoSchema(false); _testSimpleWithAutoSchema(true); } + @Test public void testWriteHeaders() throws Exception { CsvSchema schema = MAPPER.schemaFor(FiveMinuteUser.class).withHeader(); @@ -125,6 +129,7 @@ public void testWriteHeaders() throws Exception * Test that verifies that if a header line is needed, configured schema * MUST contain at least one column */ + @Test public void testFailedWriteHeaders() throws Exception { CsvSchema schema = CsvSchema.builder().setUseHeader(true).build(); @@ -137,6 +142,7 @@ public void testFailedWriteHeaders() throws Exception } } + @Test public void testExplicitWithDouble() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -148,6 +154,7 @@ public void testExplicitWithDouble() throws Exception assertEquals("abc,1.25\n", result); } + @Test public void testExplicitWithFloat() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -161,6 +168,7 @@ public void testExplicitWithFloat() throws Exception assertEquals("abc,1.89\n", result); } + @Test public void testExplicitWithFastFloat() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -175,6 +183,7 @@ public void testExplicitWithFastFloat() throws Exception assertEquals("abc,1.89\n", result); } + @Test public void testExplicitWithQuoted() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -188,6 +197,7 @@ public void testExplicitWithQuoted() throws Exception } // [dataformat-csv#14]: String values that cross buffer boundary won't be quoted properly + @Test public void testLongerWithQuotes() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -214,6 +224,7 @@ public void testLongerWithQuotes() throws Exception assertEquals(expOutput, result); } + @Test public void testWriteInFile() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -233,6 +244,7 @@ public void testWriteInFile() throws Exception } } + @Test public void testForcedQuoting60() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -252,6 +264,7 @@ public void testForcedQuoting60() throws Exception } // [dataformats-csv#438]: Should not quote BigInteger/BigDecimal (or booleans) + @Test public void testForcedQuotingOfBigDecimal() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -271,6 +284,7 @@ public void testForcedQuotingOfBigDecimal() throws Exception assertEquals("xyz,1.5,false\n", result); } + @Test public void testForcedQuotingWithQuoteEscapedWithBackslash() throws Exception { CsvSchema schema = CsvSchema.builder() @@ -285,6 +299,7 @@ public void testForcedQuotingWithQuoteEscapedWithBackslash() throws Exception assertEquals("\"\\\"abc\\\"\",1.25\n", result); } + @Test public void testForcedQuotingEmptyStrings() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -305,6 +320,7 @@ public void testForcedQuotingEmptyStrings() throws Exception } // Must quote '#' when it starts the line + @Test public void testQuotingOfCommentCharForFirstColumn() throws Exception { // First, with default quoting @@ -322,6 +338,7 @@ public void testQuotingOfCommentCharForFirstColumn() throws Exception } // In strict mode when the second column starts with '#', does not have to quote it + @Test public void testQuotingOfCommentCharForSecondColumn() throws Exception { // First, with default quoting @@ -340,6 +357,7 @@ public void testQuotingOfCommentCharForSecondColumn() throws Exception } // In strict mode when comments are disabled, does not have to quote '#' + @Test public void testQuotingOfCommentCharWhenCommentsAreDisabled() throws Exception { // First, with default quoting @@ -358,6 +376,7 @@ public void testQuotingOfCommentCharWhenCommentsAreDisabled() throws Exception } // for [dataformat-csv#98] + @Test public void testBackslashEscape() throws Exception { // First, with default quoting @@ -369,6 +388,7 @@ public void testBackslashEscape() throws Exception assertEquals("123,\"a\\\\b\"\n", csv); } + @Test public void testRawWrites() throws Exception { StringWriter w = new StringWriter(); @@ -395,6 +415,7 @@ public void testRawWrites() throws Exception } // for [dataformat-csv#87] + @Test public void testSerializationOfPrimitivesToCsv() throws Exception { CsvMapper mapper = new CsvMapper(); @@ -417,6 +438,7 @@ private void testSerializationOfPrimitiveToCsv(final CsvMapper mapper, } // [dataformats-csv#198]: Verify quoting of Numbers + @Test public void testForcedQuotingOfNumbers() throws Exception { final CsvSchema schema = CsvSchema.builder() diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVJDKSerializationTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVJDKSerializationTest.java index 306c049ba..30cf2f56b 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVJDKSerializationTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/CSVJDKSerializationTest.java @@ -2,10 +2,13 @@ import java.io.*; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.*; + /** * Tests to verify that most core Jackson components can be serialized @@ -43,6 +46,7 @@ static class MyPojo2 extends MyPojo { } private final CsvSchema SCHEMA_POJO = MAPPER.schemaFor(MyPojo.class); + @Test public void testSchema() throws IOException { byte[] ser = jdkSerialize(SCHEMA_POJO); @@ -50,6 +54,7 @@ public void testSchema() throws IOException assertNotNull(out); } + @Test public void testObjectMapper() throws IOException { final String EXP_CSV = "2,3"; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/FilteringTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/FilteringTest.java index 1480dc91e..9e44a973f 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/FilteringTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/FilteringTest.java @@ -1,11 +1,11 @@ package com.fasterxml.jackson.dataformat.csv.ser; import java.io.*; -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; +import java.util.*; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.databind.introspect.Annotated; import com.fasterxml.jackson.databind.introspect.JacksonAnnotationIntrospector; import com.fasterxml.jackson.databind.ser.FilterProvider; @@ -13,6 +13,8 @@ import com.fasterxml.jackson.databind.ser.impl.SimpleFilterProvider; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + @SuppressWarnings("serial") public class FilteringTest extends ModuleTestBase { @@ -60,6 +62,7 @@ public Object findFilterId(Annotated a) { } } + @Test public void testWriteObjects() throws Exception { List entities = new ArrayList(); entities.add( new Entity("Test entity 1", "Test description 1", "Test unused field")); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknown51Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknown51Test.java index 8a10f1ccc..688fff58a 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknown51Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknown51Test.java @@ -1,16 +1,17 @@ package com.fasterxml.jackson.dataformat.csv.ser; import java.io.StringWriter; -import java.util.*; +import java.util.LinkedHashSet; +import java.util.Set; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.fail; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.CsvWriteException; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; public class GeneratorIgnoreUnknown51Test extends ModuleTestBase { @@ -53,6 +54,7 @@ public String asString() { */ // for [dataformats-text#51] + @Test public void testIgnoreEmbeddedObject() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknownTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknownTest.java index 600e3c37a..f372bf35c 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknownTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/GeneratorIgnoreUnknownTest.java @@ -2,12 +2,18 @@ import java.util.*; -import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.fasterxml.jackson.dataformat.csv.CsvSchema; +import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotNull; -import com.fasterxml.jackson.databind.*; -import com.fasterxml.jackson.dataformat.csv.*; public class GeneratorIgnoreUnknownTest extends ModuleTestBase { @@ -55,6 +61,7 @@ protected PointAndArray(int x, int y) { /********************************************************** */ + @Test public void testSimpleIgnore() throws Exception { ObjectMapper mapper = mapperForCsv(); @@ -70,6 +77,7 @@ public void testSimpleIgnore() throws Exception } // Also verify that it is possible to ignore more complex object output too + @Test public void testIgnorePOJO() throws Exception { ObjectMapper mapper = mapperForCsv(); @@ -85,6 +93,7 @@ public void testIgnorePOJO() throws Exception assertEquals("1,2\n", csv); } + @Test public void testIgnoreObject() throws Exception { ObjectMapper mapper = mapperForCsv(); @@ -108,6 +117,7 @@ public void testIgnoreObject() throws Exception assertEquals("1,2\n", csv); } + @Test public void testIgnoreNested() throws Exception { ObjectMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/HeaderWriteTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/HeaderWriteTest.java index 845811c29..0bc37ef1c 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/HeaderWriteTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/HeaderWriteTest.java @@ -5,9 +5,13 @@ import java.util.Arrays; import java.util.List; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.SequenceWriter; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + // Tests for verifying that headers are emitted public class HeaderWriteTest extends ModuleTestBase { @@ -19,22 +23,26 @@ public class HeaderWriteTest extends ModuleTestBase private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testNoLines() throws Exception { List headers = Arrays.asList("TestHeader1", "TestHeader2"); List> dataSource = Arrays.asList(); String result = runTest(headers, dataSource); - assertEquals("Headers should have been written even with no other data", "TestHeader1,TestHeader2\n", result); + assertEquals("TestHeader1,TestHeader2\n", result, + "Headers should have been written even with no other data"); } + @Test public void testOneLine() throws Exception { List headers = Arrays.asList("TestHeader1", "TestHeader2"); List> dataSource = Arrays.asList(Arrays.asList("TestValue1", "TestValue2")); String result = runTest(headers, dataSource); - assertEquals("Headers should have been written before line", "TestHeader1,TestHeader2\nTestValue1,TestValue2\n", result); + assertEquals("TestHeader1,TestHeader2\nTestValue1,TestValue2\n", result, + "Headers should have been written before line"); } private String runTest(List headers, List> dataSource) throws IOException diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/MultipleWritesTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/MultipleWritesTest.java index a31a91e79..f20dcc8c3 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/MultipleWritesTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/MultipleWritesTest.java @@ -1,15 +1,18 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import java.io.*; -import java.util.*; +import java.io.StringWriter; +import java.util.ArrayList; +import java.util.List; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.*; -import com.fasterxml.jackson.dataformat.csv.CsvGenerator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class MultipleWritesTest extends ModuleTestBase { @@ -32,6 +35,7 @@ public Pojo(int a, int b, int c) { * write headers more than once regardless, as long as target * is CsvGenerator which tracks state. */ + @Test public void testMultipleListWrites() throws Exception { StringWriter sw = new StringWriter(); @@ -67,6 +71,7 @@ public void testMultipleListWrites() throws Exception assertEquals("col1,col2/line1-val1,line1-val2/line2-val1,line2-val2", csv); } + @Test public void testWriteValuesWithPOJOs() throws Exception { final CsvSchema schema = MAPPER.schemaFor(Pojo.class).withUseHeader(true); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/NullWritingTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/NullWritingTest.java index 0dcb9cdad..f88e7b6d0 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/NullWritingTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/NullWritingTest.java @@ -5,10 +5,14 @@ import java.util.Arrays; import java.util.List; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.*; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + // for [dataformat-csv#69], other null value serialization public class NullWritingTest extends ModuleTestBase { @@ -39,6 +43,7 @@ public Pojo83(String a, String b, int c) { private final CsvMapper csv = mapperForCsv(); + @Test public void testObjectWithNullMembersToString() throws Exception { CsvSchema schema = csv.schemaFor(Nullable.class).withUseHeader(true); ObjectWriter writer = csv.writer(schema); @@ -46,6 +51,7 @@ public void testObjectWithNullMembersToString() throws Exception { assertEquals("a,b,c,d\n,,,\n", nullMembers); } + @Test public void testNullToString() throws Exception { CsvSchema schema = csv.schemaFor(Nullable.class).withUseHeader(true); ObjectWriter writer = csv.writer(schema); @@ -53,6 +59,7 @@ public void testNullToString() throws Exception { assertEquals("a,b,c,d\n", nullObject); } + @Test public void testObjectWithNullMembersToStream() throws Exception { CsvSchema schema = csv.schemaFor(Nullable.class).withUseHeader(true); ObjectWriter writer = csv.writer(schema); @@ -68,6 +75,7 @@ public void testObjectWithNullMembersToStream() throws Exception { writeValues.close(); } + @Test public void testNullToStream() throws Exception { CsvSchema schema = csv.schemaFor(Nullable.class).withUseHeader(true); ObjectWriter writer = csv.writer(schema); @@ -89,6 +97,7 @@ public void testNullToStream() throws Exception { } // [dataformat-csv#53] + @Test public void testCustomNullValue() throws Exception { ObjectMapper mapper = mapperForCsv(); @@ -104,6 +113,7 @@ public void testCustomNullValue() throws Exception } // [dataformat-csv#83] + @Test public void testNullIssue83() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -118,6 +128,7 @@ public void testNullIssue83() throws Exception assertEquals("foo,bar,123\ntest,abc,42\n", actualCsv); } + @Test public void testNullFieldsOfListsContainedByMainLevelListIssue106() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -137,6 +148,7 @@ public void testNullFieldsOfListsContainedByMainLevelListIssue106() throws Excep assertEquals("d0,n/a,d2\nn/a,d1,d2\nd0,d1,n/a\n", result); } + @Test public void testNullElementsOfMainLevelListIssue106() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/SchemaReorderTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/SchemaReorderTest.java index 4d0b173c3..86f895604 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/SchemaReorderTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/SchemaReorderTest.java @@ -2,9 +2,12 @@ import java.util.Arrays; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class SchemaReorderTest extends ModuleTestBase { @@ -18,6 +21,7 @@ static class Reordered { private final CsvMapper MAPPER = new CsvMapper(); + @Test public void testSchemaWithOrdering() throws Exception { CsvSchema schema = MAPPER.schemaFor(Reordered.class); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorNoSchema.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorNoSchema.java index fa9a072f1..d28bb4a8a 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorNoSchema.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorNoSchema.java @@ -1,13 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import java.io.*; +import java.io.StringWriter; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.databind.ObjectWriter; import com.fasterxml.jackson.databind.SequenceWriter; -import com.fasterxml.jackson.dataformat.csv.CsvGenerator; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class TestGeneratorNoSchema extends ModuleTestBase { @@ -21,6 +23,7 @@ public class TestGeneratorNoSchema extends ModuleTestBase private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testUntypedAsSequenceStreaming() throws Exception { StringWriter sw = new StringWriter(); @@ -55,6 +58,7 @@ public void testUntypedAsSequenceStreaming() throws Exception csv); } + @Test public void testUntypedAsSequenceDatabind() throws Exception { ObjectWriter writer = MAPPER.writer(SCHEMA); @@ -68,6 +72,7 @@ public void testUntypedAsSequenceDatabind() throws Exception csv); } + @Test public void testUntypedWithSequenceWriter() throws Exception { try (StringWriter strW = new StringWriter()) { diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithCustomSeparators.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithCustomSeparators.java index 9672006ae..42115d8e6 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithCustomSeparators.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithCustomSeparators.java @@ -1,12 +1,16 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class TestGeneratorWithCustomSeparators extends ModuleTestBase { // #17 + @Test public void testOtherSeparator() throws Exception { CsvMapper mapper = mapperForCsv(); @@ -16,6 +20,7 @@ public void testOtherSeparator() throws Exception assertEquals("Barbie;Benton;FEMALE;false;\n", result); } + @Test public void testTSV() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithSequences.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithSequences.java index f67f7cdc2..3c995b7f6 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithSequences.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestGeneratorWithSequences.java @@ -1,11 +1,15 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import java.util.*; +import java.util.ArrayList; +import java.util.List; + +import org.junit.jupiter.api.Test; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; + public class TestGeneratorWithSequences extends ModuleTestBase { @@ -30,6 +34,7 @@ public Entry(int x, int y) { * Verify that we should be able to just serialize sequences as is * because any "array" markers are all but ignored by generator. */ + @Test public void testAsSequence() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithMissingValues.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithMissingValues.java index 157954ddb..1a9c335c9 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithMissingValues.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithMissingValues.java @@ -1,13 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.ser; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectWriter; - import com.fasterxml.jackson.dataformat.csv.*; -import org.junit.Test; - -import java.lang.String; +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; // [Issue#33] public class TestWriterWithMissingValues extends ModuleTestBase @@ -18,7 +18,7 @@ public class TestWriterWithMissingValues extends ModuleTestBase .addColumn("id", CsvSchema.ColumnType.STRING) .build(); final ObjectWriter WRITER = new CsvMapper().writer().with(SCHEMA); - + @Test public void testWrite_NoNulls() throws JsonProcessingException { final String csv = WRITER.writeValueAsString( diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithSomeMoreMissingValues.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithSomeMoreMissingValues.java index 8f6394ba6..50b4a6741 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithSomeMoreMissingValues.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/TestWriterWithSomeMoreMissingValues.java @@ -3,16 +3,19 @@ import java.util.LinkedHashMap; import java.util.Map; +import org.junit.jupiter.api.Test; + import com.fasterxml.jackson.databind.ObjectWriter; +import com.fasterxml.jackson.dataformat.csv.*; + +import static org.junit.jupiter.api.Assertions.assertEquals; -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; public class TestWriterWithSomeMoreMissingValues extends ModuleTestBase { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testWithAStringAndAUuid() throws Exception { final CsvSchema schema = new CsvSchema.Builder() @@ -31,6 +34,7 @@ public void testWithAStringAndAUuid() throws Exception assertEquals("hello,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithTwoStringsAndAUuid() throws Exception { @@ -52,6 +56,7 @@ public void testWithTwoStringsAndAUuid() throws Exception assertEquals("hello,world,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithANullAStringAndAUuid() throws Exception { @@ -72,6 +77,7 @@ public void testWithANullAStringAndAUuid() throws Exception assertEquals(",world,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithAStringANullAndAUuid() throws Exception { @@ -92,6 +98,7 @@ public void testWithAStringANullAndAUuid() throws Exception assertEquals("hello,,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithThreeStringsAndAUuid() throws Exception { @@ -115,6 +122,7 @@ public void testWithThreeStringsAndAUuid() throws Exception assertEquals("hello,dear,world,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithANullAStringAStringAndAUuid() throws Exception { final CsvSchema schema = new CsvSchema.Builder() @@ -135,6 +143,7 @@ public void testWithANullAStringAStringAndAUuid() throws Exception assertEquals(",hello,world,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithAStringANullAStringAndAUuid() throws Exception { @@ -157,6 +166,7 @@ public void testWithAStringANullAStringAndAUuid() throws Exception assertEquals("hello,,world,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithTwoStringsANullAndAUuid() throws Exception { final CsvSchema schema = new CsvSchema.Builder() @@ -178,6 +188,7 @@ public void testWithTwoStringsANullAndAUuid() throws Exception assertEquals("hello,world,,\"2a36b911-9699-45d2-abd5-b9f2d2c9c4a3\"\n", csv); } + @Test public void testWithTwoStringsANullAndAString() throws Exception { @@ -200,6 +211,7 @@ public void testWithTwoStringsANullAndAString() throws Exception } // [Issue#45] + @Test public void testWriteNullThirdColumn() throws Exception { final CsvSchema.Builder csvSchemaBuilder = new CsvSchema.Builder(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnicodeWritingTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnicodeWritingTest.java index 02ce37859..4cf30c16e 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnicodeWritingTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnicodeWritingTest.java @@ -2,9 +2,14 @@ import java.io.ByteArrayOutputStream; -import com.fasterxml.jackson.databind.*; +import org.junit.jupiter.api.Test; + +import com.fasterxml.jackson.databind.SequenceWriter; +import com.fasterxml.jackson.dataformat.csv.CsvMapper; +import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + +import static org.junit.jupiter.api.Assertions.assertEquals; -import com.fasterxml.jackson.dataformat.csv.*; /** * Tests to try to see if Unicode writing, reading work as expected. @@ -19,6 +24,7 @@ public class UnicodeWritingTest extends ModuleTestBase final CsvMapper MAPPER = mapperForCsv(); + @Test public void testSimpleStringSequence() throws Exception { // 16-Mar-2017, tatu: Actually, this assumes that read/write defaults are the same, diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnwrappedWriteTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnwrappedWriteTest.java index 3524fbf27..ef73ab459 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnwrappedWriteTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/UnwrappedWriteTest.java @@ -1,9 +1,13 @@ package com.fasterxml.jackson.dataformat.csv.ser; -import com.fasterxml.jackson.annotation.*; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonUnwrapped; import com.fasterxml.jackson.dataformat.csv.*; +import static org.junit.jupiter.api.Assertions.assertEquals; + public class UnwrappedWriteTest extends ModuleTestBase { @JsonPropertyOrder({ "f1", "f2", "f3" }) @@ -22,6 +26,7 @@ static class Outer { } // for [dataformat-csv#125] + @Test public void testWriteUnwrapped() throws Exception { CsvMapper mapper = mapperForCsv(); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/WriteBracketedArray495Test.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/WriteBracketedArray495Test.java index 2a0309a33..e4c9c2cae 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/WriteBracketedArray495Test.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/WriteBracketedArray495Test.java @@ -2,16 +2,15 @@ import java.io.StringWriter; -import com.fasterxml.jackson.annotation.*; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; import com.fasterxml.jackson.databind.SequenceWriter; - -import com.fasterxml.jackson.dataformat.csv.CsvMapper; -import com.fasterxml.jackson.dataformat.csv.CsvSchema; +import com.fasterxml.jackson.dataformat.csv.*; import com.fasterxml.jackson.dataformat.csv.CsvSchema.ColumnType; -import com.fasterxml.jackson.dataformat.csv.CsvValueDecorator; -import com.fasterxml.jackson.dataformat.csv.CsvValueDecorators; -import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; + +import static org.junit.jupiter.api.Assertions.assertEquals; + // [dataformats-text#495] public class WriteBracketedArray495Test extends ModuleTestBase @@ -42,18 +41,21 @@ public Article(int id, String title, int extra, double[] embeddings) { private final CsvMapper MAPPER = mapperForCsv(); // [dataformats-text#495] + @Test public void testBracketsWriteAutoSchema() throws Exception { final CsvSchema schema = _automaticSchema(); _testArrayWithBracketsWrite(schema); } + @Test public void testBracketsManualSchemaArray() throws Exception { final CsvSchema schema = _manualSchema(ColumnType.ARRAY); _testArrayWithBracketsWrite(schema); } + @Test public void testBracketsManualSchemaString() throws Exception { final CsvSchema schema = _manualSchema(ColumnType.STRING); diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/dos/CyclicCSVDataSerTest.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/dos/CyclicCSVDataSerTest.java index 0f8a82bb5..0cfe2f36b 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/dos/CyclicCSVDataSerTest.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/ser/dos/CyclicCSVDataSerTest.java @@ -3,12 +3,16 @@ import java.util.ArrayList; import java.util.List; -import com.fasterxml.jackson.core.StreamWriteConstraints; +import org.junit.jupiter.api.Test; +import com.fasterxml.jackson.core.StreamWriteConstraints; import com.fasterxml.jackson.databind.DatabindException; import com.fasterxml.jackson.dataformat.csv.CsvMapper; import com.fasterxml.jackson.dataformat.csv.ModuleTestBase; +import static org.junit.jupiter.api.Assertions.assertTrue; +import static org.junit.jupiter.api.Assertions.fail; + /** * Simple unit tests to verify that we fail gracefully if you attempt to serialize * data that is cyclic (eg a list that contains itself). @@ -17,6 +21,7 @@ public class CyclicCSVDataSerTest extends ModuleTestBase { private final CsvMapper MAPPER = mapperForCsv(); + @Test public void testListWithSelfReference() throws Exception { List list = new ArrayList<>(); list.add(list); @@ -26,8 +31,8 @@ public void testListWithSelfReference() throws Exception { } catch (DatabindException e) { String exceptionPrefix = String.format("Document nesting depth (%d) exceeds the maximum allowed", StreamWriteConstraints.DEFAULT_MAX_DEPTH + 1); - assertTrue("DatabindException message is as expected?", - e.getMessage().startsWith(exceptionPrefix)); + assertTrue(e.getMessage().startsWith(exceptionPrefix), + "DatabindException message is as expected?"); } } } diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixInputDecorator.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixInputDecorator.java index 51c47a79c..f97d641bc 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixInputDecorator.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixInputDecorator.java @@ -1,11 +1,6 @@ package com.fasterxml.jackson.dataformat.csv.testutil; -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.Reader; -import java.io.SequenceInputStream; -import java.io.StringReader; +import java.io.*; import java.nio.charset.StandardCharsets; import com.fasterxml.jackson.core.io.IOContext; diff --git a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixOutputDecorator.java b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixOutputDecorator.java index c5f971617..83e065c18 100644 --- a/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixOutputDecorator.java +++ b/csv/src/test/java/com/fasterxml/jackson/dataformat/csv/testutil/PrefixOutputDecorator.java @@ -1,9 +1,6 @@ package com.fasterxml.jackson.dataformat.csv.testutil; -import java.io.FilterOutputStream; -import java.io.IOException; -import java.io.OutputStream; -import java.io.Writer; +import java.io.*; import com.fasterxml.jackson.core.io.IOContext; import com.fasterxml.jackson.core.io.OutputDecorator; diff --git a/csv/src/test/java/perf/F5500Reader.java b/csv/src/test/java/perf/F5500Reader.java index 82f4e7dc9..1662de565 100644 --- a/csv/src/test/java/perf/F5500Reader.java +++ b/csv/src/test/java/perf/F5500Reader.java @@ -1,10 +1,10 @@ package perf; -import java.io.*; -import java.util.*; +import java.io.File; +import java.io.IOException; +import java.util.Map; import com.fasterxml.jackson.databind.MappingIterator; - import com.fasterxml.jackson.dataformat.csv.CsvMapper; import com.fasterxml.jackson.dataformat.csv.CsvSchema; diff --git a/csv/src/test/java/perf/ManualPerfComparison.java b/csv/src/test/java/perf/ManualPerfComparison.java index ded51bd10..fa60f5e5a 100644 --- a/csv/src/test/java/perf/ManualPerfComparison.java +++ b/csv/src/test/java/perf/ManualPerfComparison.java @@ -1,11 +1,13 @@ package perf; import java.io.*; -import java.util.*; +import java.util.ArrayList; +import java.util.Iterator; import com.fasterxml.jackson.core.JsonGenerator; import com.fasterxml.jackson.databind.*; -import com.fasterxml.jackson.dataformat.csv.*; +import com.fasterxml.jackson.dataformat.csv.CsvMapper; +import com.fasterxml.jackson.dataformat.csv.CsvSchema; /** * Simple manual performance micro-benchmark that compares compress and