【问题标题】:Schema validation: string from specific list of values模式验证:来自特定值列表的字符串
【发布时间】:2019-07-23 21:12:45
【问题描述】:

我有一个带有以下响应的端点:

{
     "id": 1,
     "status": "ACTIVE"
   }

状态的可能值如下:ACTIVE、INACTIVE、DELETED。 为了检查架构,我尝试了以下方法:

* def statusValues = ["ACTIVE", "INACTIVE", "DELETED" ]
* def schema = 
"""
{
  "id" : #number,
  "status" : '#(^*statusValues)'
}
"""

为了验证,我使用以下句子: 然后匹配response == schema

但它不起作用。这是错误

实际:'ACTIVE',预期:["DELETED","ACTIVE","INACTIVE"],原因: 实际值不是列表式的

你能帮帮我吗?

【问题讨论】:

    标签: karate


    【解决方案1】:

    这可能是最简单的选择:

    * def isValidStatus = function(x){ return statusValues.contains(x) }
    * def schema = { id: '#number', status: '#? isValidStatus(_)' }
    

    【讨论】:

      猜你喜欢
      • 2016-01-04
      • 1970-01-01
      • 2018-09-07
      • 1970-01-01
      • 2012-12-21
      • 1970-01-01
      • 2017-10-08
      • 1970-01-01
      • 2021-08-30
      相关资源
      最近更新 更多