我需要定义一个消费者合约,其中有一个可以为空、可以发送或不发送的字段,但如果要发送它,我需要确保对象字段类型。我在 PactNet 4.5 中没有找到任何解决该问题的方法。
示例:
Match.Type(new
{
Id = Match.Type(123),
Value = Match.Type(1.5),
InternalProperty = Match.Type(new
{
Name = Match.Type("Test")
}) //Property must be nullable
}
Pact 不支持这种方式的可选字段。请参阅 https://docs.pact.io/faq#why-is-there-no-support-for-specifying-optional-attributes 了解更多信息。
您需要为该值存在时编写一个测试,并在该值不存在时编写另一个测试。