JSTEP 10 - FasterXML/jackson-future-ideas GitHub Wiki

(Back to JSTEP page)


JSTEP-10: Unifying testing structure/tools

Main discussion : https://github.com/FasterXML/jackson/discussions/249

Related change issues

Author

Joo Hyuk Kim (@joohyukkim)

Version History

  • 2024-12-28 : Initial set-up --skeletal, contents, issues etc...

Background

Currently in Jackson 2, most of modules including core and extensions have test suite shaped in following way.

  1. Co-existence of JUnit 4 and JUnit 5
  2. Exclude /failing tests using maven-surefire-plugin except jackson-databind module where we have "New failing test management using Jupiter extension" since 2.18 version.

Scope

Scope : changes to make

To keep up with Jackson 3 changes such as baseline version of JDK 17, it would be effective for consistency to implement following in order ....

  • Change 1 : Replace JUnit 4 with JUnit 5 usage
    • also, make use of something like DatabindTestUtil where needed (name to use maybe JacksonTestUtil or ModuleTestUtil
  • Change 2 : Replace use of src/test/java/.../failing package with Jackson's new failing test management and moving tests to new src/test/java/.../tofix package

Scope: target modules to apply

Note that modules to remove --or merge to other modules-- starting Jackson 3 will not be included.

Status

Completed

Completed, core

Work-in-progress

N/A

Planned, not started, data format modules

  • jackson-dataformats-binary:
    • Change 1 :
    • Change 2 :
  • jackson-dataformats-text:
    • Change 1 :
    • Change 2 :
  • jackson-dataformat-xml:
    • Change 1 :
    • Change 2 :

Planned, not started, data type modules

  • jackson-datatypes-collections
    • Change 1 :
    • Change 2 :
  • jackson-datatypes-misc
    • Change 1 :
    • Change 2 :
  • jackson-datatype-joda
    • Change 1 :
    • Change 2 :

Planned, not started, other modules

  • jackson-modules-base
    • Change 1 :
    • Change 2 :
  • jackson-modules-java8
    • Change 1 :
    • Change 2 :