diaspora/features/support/paths.rb
2010-12-14 17:11:42 -08:00

26 lines
775 B
Ruby

module NavigationHelpers
def path_to(page_name)
case page_name
when /^the home page$/
root_path
when /^its ([\w ]+) page$/
send("#{$1.gsub(/\W+/, '_')}_path", @it)
when /^the ([\w ]+) page$/
send("#{$1.gsub(/\W+/, '_')}_path")
when /^my edit profile page$/
edit_person_path(@me.person)
when /^my acceptance form page$/
accept_user_invitation_path(:invitation_token => @me.invitation_token)
when /^the requestor's profile page$/
person_path(@me.reload.pending_requests.first.from)
when /^"([^\"]*)"'s page$/
person_path(User.find_by_email($1).person)
when /^"(\/.*)"/
$1
else
raise "Can't find mapping from \"#{page_name}\" to a path."
end
end
end
World(NavigationHelpers)