Как использовать динамические пути к файлам для ответов с Wiremock.Net? - PullRequest
2 голосов
/ 03 мая 2019

У меня есть вопрос о текущих возможностях шаблонов.

Я хотел бы получить ответы из файлов, используя WireMock.Net, и для этого я использую статические сопоставления с атрибутом «BodyAsFile».

Пример:

{
    "Request": {
        "Path": {
            "Matchers": [
                {
                    "Name": "WildcardMatcher",
                    "Pattern": "/bodyasfilexmltest",
                    "IgnoreCase": false
                }
            ]
        },
        "Methods": [
            "get"
        ]
    },
  "Response": {
    "StatusCode": 200,
    "Headers": { "Content-Type": "application/xml" },
    "BodyAsFile": "c:\\temp-wiremock\\__admin\\mappings\\MyXmlResponse.xml",
    "UseTransformer": false
  }
}

Но я бы хотел изменить каталог ответов в зависимости от атрибутов запроса, в значительной степени, как это делают шаблоны Handlebars.

Пример (MyUniqueNumber будетимя каждой папки):

"BodyAsFile": "c:\\temp-wiremock\\__admin\\mappings\\_{{request.query.MyUniqueNumber}}_\\MyXmlResponse.xml",

В этом примере переменная находится в пути, но ее также можно добавить к имени файла.

Я проверил ее, и, похоже,библиотека пытается загрузить файл с диска при загрузке, а не по запросу, поэтому она не может найти недопустимый путь "c: \ temp-wiremock__admin \ mappings {{request.query.MyUniqueNumber}}} \ MyXmlResponse.xml".

Поддерживается ли этот сценарий в настоящее время (возможно, по-другому)?

1 Ответ

1 голос
/ 04 мая 2019

Эта проблема решена в WireMock.Net версии 1.0.15

...