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
- https://github.com/FasterXML/jackson/discussions/249
- https://github.com/FasterXML/jackson-databind/discussions/4190
- https://github.com/FasterXML/jackson-databind/pulls?q=is:pr+migrate+junit+
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.
- Co-existence of
JUnit 4
andJUnit 5
- Exclude
/failing
tests usingmaven-surefire-plugin
exceptjackson-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
withJUnit 5
usage- also, make use of something like DatabindTestUtil where needed (name to use maybe
JacksonTestUtil
orModuleTestUtil
- also, make use of something like DatabindTestUtil where needed (name to use maybe
- Change 2 : Replace use of
src/test/java/.../failing
package with Jackson's new failing test management and moving tests to newsrc/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
- jackson-annotations
- Change 1 : https://github.com/FasterXML/jackson-annotations/issues/247
- Change 2 : There are no failing tests
- jackson-core
- jackson-databind
- Change 1 : https://github.com/FasterXML/jackson-databind/pulls?q=is:pr+migrate+junit+ search query), unfortunately didn't make umbrella issue
- Change 2 : https://github.com/FasterXML/jackson-databind/pull/4696
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 :