Christopher L. Shannon created OPENWIRE-73:
----------------------------------------------
Summary: Add tests for all commands to verify universal marshaller
byte equivalency with all versions
Key: OPENWIRE-73
URL: https://issues.apache.org/jira/browse/OPENWIRE-73
Project: ActiveMQ OpenWire
Issue Type: Task
Reporter: Christopher L. Shannon
Fix For: 1.0.0
Right now the OpenWire interop tests try and check that the new commands and
marshallers produce the same bytes as the existing marshallers that are in
activemq-client and currently used. This is done indirectly by using the new
marshallers to send commands to an embedded broker which reads them. This works
but it doesn't cover all cases and requires running a broker.
Instead, a better approach would be to simply check the resulting bytes
produced are exactly equivalent and just test the different marshallers without
a broker. We should create tests for every single OpenWire command and version
that will check that the marshalled bytes are exactly equivalent as the
existing verison in use today with activemq-client. In theory these tests could
be generated automatically so we can explore that but we may not need to as we
really only need to create the tests once for the legacy versions today because
going forward with the universal marshaller being used there won't be any new
legacy versions and we will keep the new tests up to date.
Also note that this project includes a legacy module with copies of the legacy
marshallers but still a bit refactored and repackaged. So we should likely run
the tests to verify the universal marshaller output matches both the
re-packaged legacy module as well as the legacy marshallers that are packaged
currently with activemq-client.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)