mirror of
https://github.com/TracksApp/tracks.git
synced 2026-02-25 08:34:08 +01:00
add some tests for contexts page
This commit is contained in:
parent
059dc948c0
commit
83e1e36d73
4 changed files with 70 additions and 7 deletions
|
|
@ -42,6 +42,31 @@ When /^I add a new hidden context "([^"]*)"$/ do |context_name|
|
|||
submit_new_context_form
|
||||
end
|
||||
|
||||
Then /^context "([^"]*)" should be above context "([^"]*)"$/ do |context_high, context_low|
|
||||
high_id = @current_user.contexts.find_by_name(context_high).id
|
||||
low_id = @current_user.contexts.find_by_name(context_low).id
|
||||
high_pos = selenium.get_element_position_top("//div[@id='context_#{high_id}']").to_i
|
||||
low_pos = selenium.get_element_position_top("//div[@id='context_#{low_id}']").to_i
|
||||
(high_pos < low_pos).should be_true
|
||||
end
|
||||
|
||||
When /^I drag context "([^"]*)" below context "([^"]*)"$/ do |context_drag, context_drop|
|
||||
drag_id = @current_user.contexts.find_by_name(context_drag).id
|
||||
drop_id = @current_user.contexts.find_by_name(context_drop).id
|
||||
|
||||
container_height = selenium.get_element_height("//div[@id='container_context_#{drag_id}']").to_i
|
||||
vertical_offset = container_height*2
|
||||
coord_string = "10,#{vertical_offset}"
|
||||
|
||||
drag_context_handle_xpath = "//div[@id='context_#{drag_id}']//span[@class='handle']"
|
||||
drop_context_container_xpath = "//div[@id='container_context_#{drop_id}']"
|
||||
|
||||
selenium.mouse_down_at(drag_context_handle_xpath,"2,2")
|
||||
selenium.mouse_move_at(drop_context_container_xpath,coord_string)
|
||||
# no need to simulate mouse_over for this test
|
||||
selenium.mouse_up_at(drop_context_container_xpath,coord_string)
|
||||
end
|
||||
|
||||
Then /^I should see that a context named "([^"]*)" is not present$/ do |context_name|
|
||||
Then "I should not see \"#{context_name}\""
|
||||
end
|
||||
|
|
@ -60,6 +85,14 @@ Then /^I should see the context "([^"]*)" under "([^"]*)"$/ do |context_name, st
|
|||
response.should have_xpath("//div[@id='list-contexts-#{state}']//div[@id='context_#{context.id}']")
|
||||
end
|
||||
|
||||
Then /^the new context form should be visible$/ do
|
||||
selenium.is_visible("context_new").should be_true
|
||||
end
|
||||
|
||||
Then /^the new context form should not be visible$/ do
|
||||
selenium.is_visible("context_new").should be_false
|
||||
end
|
||||
|
||||
Then /^the context list badge for ([^"]*) contexts should show (\d+)$/ do |state_name, count|
|
||||
selenium.get_text("xpath=//span[@id='#{state_name}-contexts-count']").should == count
|
||||
end
|
||||
|
|
|
|||
|
|
@ -47,7 +47,11 @@ end
|
|||
Given /^I have the following contexts$/ do |table|
|
||||
Context.delete_all
|
||||
table.hashes.each do |hash|
|
||||
context = Factory(:context, hash)
|
||||
context = @current_user.contexts.create!(:name => hash[:name])
|
||||
unless hash[:hide].blank?
|
||||
context.hide = hash[:hide] == true
|
||||
context.save!
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue