2010-05-05 19:09:51 +02:00
Given / ^I have no contexts$ / do
# should probably not be needed as you use this given at the start of a scenario
Context . delete_all
end
2010-07-30 21:06:12 +02:00
Given / ^there exists a context called "([^"]*)" for user "([^"]*)"$ / do | context_name , login |
user = User . find_by_login ( login )
user . should_not be_nil
@context = user . contexts . create! ( :name = > context_name )
end
2010-02-09 10:27:59 +01:00
Given / ^I have a context called "([^ \ "]*)"$ / do | context_name |
2010-07-30 21:06:12 +02:00
Given " there exists a context called \" #{ context_name } \" for user \" #{ @current_user . login } \" "
2010-02-09 10:27:59 +01:00
end
2010-05-05 19:09:51 +02:00
Given / ^I have the following contexts:$ / do | table |
table . hashes . each do | context |
Given 'I have a context called "' + context [ :context ] + '"'
end
end
2010-05-03 21:26:48 +02:00
Given / ^I have a context "([^ \ "]*)" with (.*) actions$ / do | context_name , number_of_actions |
context = @current_user . contexts . create! ( :name = > context_name )
1 . upto number_of_actions . to_i do | i |
@current_user . todos . create! ( :context_id = > context . id , :description = > " todo #{ i } " )
end
end
2010-07-29 18:06:30 +02:00
Given / ^I have the following contexts$ / do | table |
Context . delete_all
table . hashes . each do | hash |
context = Factory ( :context , hash )
end
end
2010-07-14 15:13:20 +02:00
When / ^I visit the context page for "([^ \ "]*)"$ / do | context_name |
2010-02-09 10:27:59 +01:00
context = @current_user . contexts . find_by_name ( context_name )
context . should_not be_nil
visit " /contexts/ #{ context . id } "
end
When / ^I edit the context name in place to be "([^ \ "]*)"$ / do | new_context_name |
selenium . click " context_name "
fill_in " value " , :with = > " OutAndAbout "
click_button " OK "
end
2010-02-09 23:26:38 +01:00
When / ^I delete the context "([^ \ "]*)"$ / do | context_name |
context = @current_user . contexts . find_by_name ( context_name )
context . should_not be_nil
click_link " delete_context_ #{ context . id } "
2010-11-09 10:47:09 +01:00
selenium . get_confirmation . should == " Are you sure that you want to delete the context ' #{ context_name } '? Be aware that this will also delete all (repeating) actions in this context! "
2010-04-10 15:11:59 -04:00
wait_for do
! selenium . is_element_present ( " delete_context_ #{ context . id } " )
end
2010-02-09 23:26:38 +01:00
end
When / ^I edit the context to rename it to "([^ \ "]*)"$ / do | new_name |
click_link " edit_context_ #{ @context . id } "
2010-07-16 15:38:34 +02:00
wait_for do
selenium . is_element_present ( " submit_context_ #{ @context . id } " )
end
2010-02-09 23:26:38 +01:00
fill_in " context_name " , :with = > new_name
2010-07-16 15:38:34 +02:00
selenium . click " submit_context_ #{ @context . id } " ,
:wait_for = > :text ,
:element = > " flash " ,
:text = > " Context saved "
2010-04-10 15:11:59 -04:00
wait_for do
2010-07-16 15:38:34 +02:00
selenium . is_element_present ( " edit_context_ #{ @context . id } " )
2010-04-10 15:11:59 -04:00
end
2010-02-09 23:26:38 +01:00
end
2010-05-03 21:26:48 +02:00
2010-07-29 18:06:30 +02:00
When / ^I add a new context "([^"]*)"$ / do | context_name |
fill_in " context[name] " , :with = > context_name
submit_new_context_form
end
When / ^I add a new hidden context "([^"]*)"$ / do | context_name |
fill_in " context[name] " , :with = > context_name
check " context_hide "
submit_new_context_form
end
2010-05-03 21:26:48 +02:00
Then / ^I should see the context name is "([^ \ "]*)"$ / do | context_name |
Then " I should see \" #{ context_name } \" "
end
Then / ^he should see that a context named "([^ \ "]*)" is present$ / do | context_name |
Then " I should see \" #{ context_name } \" "
end
Then / ^he should see that a context named "([^ \ "]*)" is not present$ / do | context_name |
Then " I should not see \" #{ context_name } ( \" "
2010-07-29 18:06:30 +02:00
end
Then / ^I should see the context "([^"]*)" under "([^"]*)"$ / do | context_name , state |
context = Context . find_by_name ( context_name )
response . should have_xpath ( " //div[@id='list-contexts- #{ state } ']//div[@id='context_ #{ context . id } '] " )
end