Find directly the label instead of falling back to it

The input element is always hidden, so the check always ended falling
back to the label. Moreover, the label is the element that the user
interacts with, so it must be the one used.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This commit is contained in:
Daniel Calviño Sánchez 2021-03-05 22:02:46 +01:00 committed by backportbot[bot]
parent 3a470c2ebe
commit 8185c46bd8
1 changed files with 1 additions and 8 deletions

View File

@ -81,14 +81,7 @@ class AppSettingsContext implements Context, ActorAwareInterface {
* @Given I toggle the :id checkbox in the settings * @Given I toggle the :id checkbox in the settings
*/ */
public function iToggleTheCheckboxInTheSettingsTo($id) { public function iToggleTheCheckboxInTheSettingsTo($id) {
$locator = self::CheckboxInTheSettings($id); $this->actor->find(self::checkboxLabelInTheSettings($id), 10)->click();
// If locator is not visible, fallback to label
if (!$this->actor->find(self::CheckboxInTheSettings($id), 10)->isVisible()) {
$locator = self::checkboxLabelInTheSettings($id);
}
$this->actor->find($locator, 10)->click();
} }
/** /**