契约:如何匹配其键与正则表达式匹配的对象?

时间:2018-05-25 14:58:50

标签: pact pact-jvm pact-java

我正在尝试编写一个pact使用者测试来匹配以下响应。

[
  {
      "accountId" : 1,
      "permissions" : [
         {
            "schedule" : {
               "01/01/2018" : false,
               "01/01/1900" : true
            },
            "permissionId" : 3
         }
      ]
   }
]

每个计划对象由未知数量的键组成,这些键与简单的正则表达式匹配。但是我没有看到使用正则表达式匹配键的方法,同时将值映射为简单的布尔值。

例如,我在API中看到以下方法。

public LambdaDslObject eachKeyLike(
        String exampleKey,
        Consumer<LambdaDslObject> nestedObject)

但是,这将期望一个新对象作为值,而不是原始类型。

"schedule" : {
  "01/01/2018" : { ... },    // not what I want to match
  "01/01/1900" : false       // what I want to match
}

有没有办法在pact-jvm中指定映射到原始值的不精确键?

1 个答案:

答案 0 :(得分:4)

很抱歉,此功能尚不存在,但已针对下一版本的协议规范进行了讨论。您可以在此问题上添加您的想法:https://github.com/pact-foundation/pact-specification/issues/47