mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 14:05:37 +02:00
Better "editable page" Behat assertion
This commit is contained in:
parent
7136daa56d
commit
a7ad85c2a8
@ -44,13 +44,17 @@ class CmsFormsContext extends BehatContext {
|
||||
}
|
||||
|
||||
/**
|
||||
* @Then /^I should see an edit page form$/
|
||||
* @Then /^I should( not? |\s*)see an edit page form$/
|
||||
*/
|
||||
public function stepIShouldSeeAnEditPageForm() {
|
||||
public function stepIShouldSeeAnEditPageForm($negative) {
|
||||
$page = $this->getSession()->getPage();
|
||||
|
||||
$form = $page->find('css', '#Form_EditForm');
|
||||
assertNotNull($form, 'I should see an edit page form');
|
||||
if(trim($negative)) {
|
||||
assertNull($form, 'I should not see an edit page form');
|
||||
} else {
|
||||
assertNotNull($form, 'I should see an edit page form');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
@ -182,29 +186,42 @@ JS;
|
||||
}
|
||||
|
||||
/**
|
||||
* @Given /^I should see a "([^"]*)" button$/
|
||||
* Example: I should see a "Submit" button
|
||||
* Example: I should not see a "Delete" button
|
||||
*
|
||||
* @Given /^I should( not? |\s*)see a "([^"]*)" button$/
|
||||
*/
|
||||
public function iShouldSeeAButton($text) {
|
||||
public function iShouldSeeAButton($negative, $text) {
|
||||
$page = $this->getSession()->getPage();
|
||||
$els = $page->findAll('named', array('link_or_button', "'$text'"));
|
||||
$matchedEl = null;
|
||||
foreach($els as $el) {
|
||||
if($el->isVisible()) $matchedEl = $el;
|
||||
}
|
||||
assertNotNull($matchedEl, sprintf('%s button not found', $text));
|
||||
|
||||
if(trim($negative)) {
|
||||
assertNull($matchedEl, sprintf('%s button found', $text));
|
||||
} else {
|
||||
assertNotNull($matchedEl, sprintf('%s button not found', $text));
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @Given /^I should not see a "([^"]*)" button$/
|
||||
* @Given /^I should( not? |\s*)see a "([^"]*)" field$/
|
||||
*/
|
||||
public function iShouldNotSeeAButton($text) {
|
||||
public function iShouldSeeAField($negative, $text) {
|
||||
$page = $this->getSession()->getPage();
|
||||
$els = $page->findAll('named', array('link_or_button', "'$text'"));
|
||||
$els = $page->findAll('named', array('field', "'$text'"));
|
||||
$matchedEl = null;
|
||||
foreach($els as $el) {
|
||||
if($el->isVisible()) $matchedEl = $el;
|
||||
}
|
||||
assertNull($matchedEl, sprintf('%s button found', $text));
|
||||
|
||||
if(trim($negative)) {
|
||||
assertNull($matchedEl);
|
||||
} else {
|
||||
assertNotNull($matchedEl);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user