Codeception / Codeception/lib-innerbrowser

InnerBrowser fillField throws exception if input does not have a name attribute

Open
#24 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
PHP
Stars
87
Forks
20
PR merge metrics
No merged PRs in 30d

Description

This issue comes from the problem reported in Codeception/Codeception#1221. You will get an exception with the text `InvalidArgumentException: Malformed field path ""` if you call `fillField` for a form field without a name attribute or an empty name attribute.

This comes from the fact that the call to `matchFormField` at https://github.com/Codeception/Codeception/blob/2.1/src/Codeception/Lib/InnerBrowser.php#L789 uses the value of the name attribute to access the fields in a `\Symfony\Component\DomCrawler\Form` object.

However, this `Form` object will not store form fields that do not have a value for their name attribute, see this line of code: https://github.com/symfony/dom-crawler/blob/master/Form.php#L452.

I don't see an easy workaround for this problem, but maybe someone else does, maybe @Naktibalda or @DavertMik? I am not really familiar with this part of the Codeception codebase :)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.