首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何对‘String’以外的值使用Pact Matcher

如何对‘String’以外的值使用Pact Matcher
EN

Stack Overflow用户
提问于 2017-02-10 23:18:02
回答 1查看 1.1K关注 0票数 0

在pact-jvm (groovy在消费者端,gradle在提供者端)中,我尝试使用Pact匹配器,如下所示:

代码语言:javascript
复制
name regexp(~/\w+/,'sony')

Pact matcher正则表达式只对字符串有效吗?对于字符串以外的值,我需要使用Pact term吗?

如果上面两个问题的答案是“是”。请向我解释如何在groovy风格中使用Pact term。

我尝试过使用如下的Pact term:

代码语言:javascript
复制
date Pact.Term(generate :"02/11/2013", matcher:/\d{2}\/\d{2}\/\d{4}/)

但是获得groovy - MethodMissingException。我完整的回复正文供参考:

代码语言:javascript
复制
withBody {
                id regexp('[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}','e8cda07e-849f-49c2-94d6-aaa5c4ab7fcd')
                name regexp(~/\w+/,'sony')
                date Pact.Term(generate :"02/11/2013", matcher:/\d{2}\/\d{2}\/\d{4}/)
        }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-02-14 05:26:40

正则表达式仅适用于字符串。

如果你想匹配日期,我建议使用date匹配器,例如

代码语言:javascript
复制
withBody {
                id regexp('[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}','e8cda07e-849f-49c2-94d6-aaa5c4ab7fcd')
                name regexp(~/\w+/,'sony')
                date date("dd/MM/yyyy", "02/11/2013")
         }

请参阅可用的DSL方法https://github.com/DiUS/pact-jvm/tree/master/pact-jvm-consumer-groovy#dsl-methods-1

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42162810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档