XQuery, утверждаете формат даты, а не фактическую дату? - PullRequest
1 голос
/ 10 июня 2011

У меня есть несколько тестов пользовательского интерфейса мыла, которые содержат утверждения XQuery по полученным ответам, например:

declare namespace soapenv='http://schemas.xmlsoap.org/soap/envelope/';
declare namespace ns2='http://mydomain.com/mydata_1';
/soapenv:Envelope/soapenv:Body/ns2:itemDetail/ns2:startDate

В настоящее время я использую следующий ожидаемый результат:

<ns2:startDate>2008-01-01T00:00:00.000Z</ns2:startDate>

Пока это работает нормально, однако этот фрагмент данных может измениться.

Вопрос: Есть ли способ, которым я могу утверждать формат даты, например, мне все равно, какая датазначение, которое я получаю, если оно соответствует определенному формату?

Я мог бы использовать:

<ns2:startDate>*</ns2:startDate>

Но тогда я мог бы получить любой формат даты

Есть ли что-то подобное?

<ns2:startDate>yyyy-MM-dd HH:mm:ss.ms</ns2:startDate>

Спасибо

1 Ответ

2 голосов
/ 10 июня 2011

Вы можете написать свой запрос как

/ soapenv: Конверт / soapenv: Тело / ns2: itemDetail / ns2: startDate / match (., $ Regex)

с ожидаемым результатом true, где $ regex - это регулярное выражение, которому, как вы ожидаете, соответствуют данные.

...