Sha256: 89191acfe42f7d6fd21180fe07fc32f32432575f804eeb150634f47818c6c362
Contents?: true
Size: 1.05 KB
Versions: 2
Compression:
Stored size: 1.05 KB
Contents
module NavigationHelpers # Maps a name to a path. Used by the # # When /^I go to (.+)$/ do |page_name| # # step definition in web_steps.rb # # def specific_resource_path(page_name) resource_type = page_name.gsub(/^that|\'s page/, '').strip send((resource_type+'_path').to_sym, self.instance_variable_get("@#{resource_type}".to_sym)) end def path_to(page_name) case page_name when /the home\s?page/ '/' when /that .+\'s page/ specific_resource_path(page_name) # Add more mappings here. # Here is an example that pulls values out of the Regexp: # # when /^(.*)'s profile page$/i # user_profile_path(User.find_by_login($1)) else begin page_name =~ /the (.*) page/ path_components = $1.split(/\s+/) self.send(path_components.push('path').join('_').to_sym) rescue Object => e raise "Can't find mapping from \"#{page_name}\" to a path.\n" + "Now, go and add a mapping in #{__FILE__}" end end end end World(NavigationHelpers)
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
report_ui-0.0.1.alpha | features/support/paths.rb |
granular_permissions-0.0.0 | features/support/paths.rb |