Currently we provide these structured data artifacts:
XML: snapshot-tests-jaxb
XML: snapshot-tests-jaxb-jakarta
JSON: snapshot-tests-jackson
HTML: snapshot-tests-html
The naming is obviously inconsistent as it sometime states the technology (jaxb, jackson) and sometimes states the structure (html).
Both information might be valuable to some consumer though so it is not easy to come up with a consistent naming that includes all the information.
I tend to prefer the following naming scheme:
XML: snapshot-tests-xml-legacy (jaxb with javax. namespaces + xmlunit)
XML: snapshot-tests-xml (jaxb with jakarta. namespaces + xmlunit)
JSON: snapshot-tests-json (jackson + jsonassert)
HTML: snapshot-tests-html (jsoup + xmlunit)
For backward compatibility we can leave the existing artifacts and make them transitively pull in the new module. This also allows to print a deprecation warning in projects that are still referencing the old modules.
When we're at it: we should also think about separating the public API from the implementation. We can split off the contents of the de.skuzzle.test.snapshot and de.skuzzle.test.snapshot.data.text package into a new -api module. This can be done only after #17 has been finished
Currently we provide these structured data artifacts:
snapshot-tests-jaxb
snapshot-tests-jaxb-jakarta
snapshot-tests-jackson
snapshot-tests-html
The naming is obviously inconsistent as it sometime states the technology (
jaxb
,jackson
) and sometimes states the structure (html
).Both information might be valuable to some consumer though so it is not easy to come up with a consistent naming that includes all the information.
I tend to prefer the following naming scheme:
snapshot-tests-xml-legacy
(jaxb withjavax.
namespaces + xmlunit)snapshot-tests-xml
(jaxb withjakarta.
namespaces + xmlunit)snapshot-tests-json
(jackson + jsonassert)snapshot-tests-html
(jsoup + xmlunit)For backward compatibility we can leave the existing artifacts and make them transitively pull in the new module. This also allows to print a deprecation warning in projects that are still referencing the old modules.
When we're at it: we should also think about separating the public API from the implementation. We can split off the contents of the
de.skuzzle.test.snapshot
andde.skuzzle.test.snapshot.data.text
package into a new-api
module. This can be done only after #17 has been finished