Почему эти спички Капибара имеют другой результат? Разве они не должны быть эквивалентны здесь? - PullRequest
0 голосов
/ 02 декабря 2011

Я пытался выяснить, почему мои соответствия не совпадают, и это привело меня к следующим двум тестам:

subject.has_field?("filter").should be_true
subject.has_xpath?(".//input[contains(@id, 'filter')]").should be_true

Второй из этих тестов приводит к успеху, но первый не проходит. Но определение has_field, похоже, указывает на то, что в любой ситуации, когда проходит второе, первое также должно пройти. Что мне здесь не хватает?

Вот элемент HTML:

<input id="filter_1" type="checkbox" name="type[ids][]">

1 Ответ

1 голос
/ 02 декабря 2011

Просто предположение: has_field? должен соответствовать только "типизированным" полям (и флажкам) - он отфильтровывает входные данные с type=image, type=submit и type=hidden.Может ли это быть причиной вашей проблемы?

Кроме того, has_field? проверяет эквивалентность, по крайней мере, в отношении идентификаторов, чтобы он не совпадал с конечными символами в идентификаторе.

...