silverstripe-reports/tests/salad/step_definitions/general.rb
Ingo Schommer e9b8594fe9 MINOR: Tweaks to ModelAdmin tabs HTML, and salad tests (from r104078)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/cms/trunk@112451 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-10-15 01:33:10 +00:00

41 lines
1.1 KiB
Ruby

##
## General rules for the SilverStripe CMS as a whole. They mostly have to do with the LeftAndMain
## interface
# Match general CMS tabs, ModelAdmin needs another system
Given /I click on the "([^\"]*)" tab/ do |tab|
found = nil
links = @salad.browser.links()
links.each {|link|
if /^tab-.+/.match(link.id) then
if link.innerText == tab or /^tab-.*#{tab}(_set)?/.match(link.id) then
found = link
break
end
end
}
if found then
Given "I click the \"#{found.id}\" link"
else
fail("Could not find the \"#{tab}\" tab")
end
end
Given /I wait for a status message/ do
Watir::Waiter::wait_until {
@browser.p(:id, 'statusMessage').exists? && @browser.p(:id, 'statusMessage').visible?
}
end
Given /I wait for a success message/ do
# We have to wait until after messages of the form 'Saving...', to get either a good message or
# a bad message
Watir::Waiter::wait_until {
@browser.p(:id, 'statusMessage').exists? && @browser.p(:id, 'statusMessage').visible? && @browser.p(:id, 'statusMessage').class_name != ""
}
@browser.p(:id, 'statusMessage').class_name.should == 'good'
end