Hi matchers have changed in version 4.6.1 `Matchi...
# pact-jvm
a
Hi matchers have changed in version 4.6.1
MatchingRuleDefinition.parseMatchingRuleDefinition("matching(equalTo, '\u0000\u0001\u0002\u0003')")
produces in 4.6.0
Ok(value=MatchingRuleDefinition(value=\u0000\u0001\u0002\u0003, valueType=Unknown, rules=[A(value=<http://au.com|au.com>.dius.pact.core.model.matchingrules.EqualsMatcher@192d74fb)], generator=null))
and in 4.6.1
Ok(value=MatchingRuleDefinition(value=, valueType=Unknown, rules=[A(value=<http://au.com|au.com>.dius.pact.core.model.matchingrules.EqualsMatcher@295eaa7c)], generator=null))
is the change intentional?
r
Yes, in 4.6.0 the string escaped where not processed correctly, so the value was set verbatim. For instance,
'\''
would fail
m
Has this caused a break to the plugin, or failing an assertion in a test that checked the defined matcher?
a
The tests for the plugin are failing for Avro FIXED fields
Also, for the BYTES fields
As I was using
Copy code
"\u0000\u0001\u0002\u0003\u0004\u0005"
notation to workaround passing bytes to protobuf using strings and storing that in the pact file