Могут ли значения предикатов иметь подстановочные знаки в Mountebank? - PullRequest
0 голосов
/ 07 декабря 2018

Я пытаюсь определить заглушку:

{
   "predicates":[
      {
         "equals":{
            "method":"GET",
            "path":"/sword/eBISXMLInvoice2.do",
            "query": {
              "action": "index",
              "page": 3 <-- this one!
            }
         }
      }
   ],
   "responses":[
      {
         "is":{
            "statusCode":200,
            "headers":{
               "Content-Type":"application/xml"
            },
            "body":"<doclist><document uuid='101654' type='invoice' date='2018-11-14 13:49:43' /></doclist>"
         }
      }
   ]
}

Один из ожидаемых параметров строки запроса (называемый "страницей") может иметь несколько значений.Как я могу определить предикат, чтобы справиться с этим?

1 Ответ

0 голосов
/ 07 декабря 2018

На мой вопрос очень легко ответить.Согласно docs , предикат "равно", будет соответствовать, если любое значение соответствует .

Полный текст:

ИногдаВы можете встретить многозначные ключи.Это может быть в случае строк запросов и заголовков HTTP, имеющих повторяющиеся ключи, например ?key=first&key=second.В этих случаях для DeepEquals требуются все значения (в любом порядке) для сопоставления.Все остальные предикаты будут совпадать при совпадении любого значения, поэтому предикат equals будет соответствовать значению second в приведенном выше примере.

Так что я могу просто удалить изменяемое значение строки запроса из предикатаили я могу оставить его там, это не имеет значения.

  {
     "equals":{
        "method":"GET",
        "path":"/sword/eBISXMLInvoice2.do",
        "query": {
          "action": "index"
        }
     }
  }
...