diff --git a/.travis.yml b/.travis.yml index 6366014..31200a5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,6 @@ language: php -dist: precise +dist: xenial sudo: false @@ -29,7 +29,7 @@ before_script: - export PATH=~/.composer/vendor/bin:$PATH - composer validate - composer install --dev --prefer-dist - - composer require --prefer-dist --no-update silverstripe/recipe-core:1.0.x-dev + - composer require --prefer-dist --no-update silverstripe/recipe-core:^4 - composer update - if [[ $PHPCS_TEST ]]; then composer global require squizlabs/php_codesniffer:^3 --prefer-dist --no-interaction --no-progress --no-suggest -o; fi - phpenv rehash diff --git a/src/Context/BasicContext.php b/src/Context/BasicContext.php index ba632e8..1b3ae49 100644 --- a/src/Context/BasicContext.php +++ b/src/Context/BasicContext.php @@ -442,6 +442,24 @@ JS; $button->click(); } + /** + * @Given /^I press the "([^"]*)" buttons$/ + * @param string $text A list of button names can be provided by seperating the entries with the | character. + */ + public function stepIPressTheButtons($text) + { + $buttonNames = explode('|', $text); + foreach ($buttonNames as $name) { + $button = $this->findNamedButton(trim($name)); + if ($button) { + break; + } + } + + assertNotNull($button, "{$text} button not found"); + $button->click(); + } + /** * Needs to be in single command to avoid "unexpected alert open" errors in Selenium. * Example1: I press the "Remove current combo" button, confirming the dialog