kanbanworkflowstimelinescrumrubyroadmapproject-planningproject-managementopenprojectangularissue-trackerifcgantt-chartganttbug-trackerboardsbcf
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.1 KiB
41 lines
1.1 KiB
12 years ago
|
When(/^I create a new enumeration with the following:$/) do |table|
|
||
|
attributes = table.rows_hash
|
||
|
|
||
|
type = activity_type_from_string(attributes['type'])
|
||
|
|
||
|
visit new_enumeration_path(:type => type)
|
||
|
|
||
|
fill_in 'enumeration_name', :with => attributes['name']
|
||
|
|
||
|
click_button(I18n.t(:button_create))
|
||
|
end
|
||
|
|
||
|
Then(/^I should see the enumeration:$/) do |table|
|
||
|
attributes = table.rows_hash
|
||
|
|
||
|
type = activity_type_from_string(attributes['type'])
|
||
|
|
||
|
# as the html is not structured in any way we have to look for the first
|
||
|
# h3 that contains the heading for the activity we are interested in
|
||
|
# and then the td within the directly following table
|
||
|
should have_selector("h3:contains('#{i18n_for_activity_type(type)}') + table td",
|
||
|
:text => attributes['name'])
|
||
|
end
|
||
|
|
||
|
def activity_type_from_string(string)
|
||
|
case string.gsub(/\s/,"_").camelcase
|
||
|
when "Activity", "TimeEntryActivity"
|
||
|
TimeEntryActivity
|
||
|
else
|
||
|
raise "Don't know this enumeration yet"
|
||
|
end
|
||
|
end
|
||
|
|
||
|
def i18n_for_activity_type(type)
|
||
|
if type == TimeEntryActivity
|
||
|
I18n.t(:enumeration_activities)
|
||
|
else
|
||
|
raise "Don't know this enumeration yet"
|
||
|
end
|
||
|
end
|