class ThoughtBot::Shoulda::Controller::ResourceOptions

def normalize!(target) # :nodoc:

:nodoc:
def normalize!(target) # :nodoc:
  @denied.actions  = VALID_ACTIONS if @denied.actions == :all
  @actions         = VALID_ACTIONS if @actions        == :all
  @formats         = VALID_FORMATS if @formats        == :all
  @denied.actions  = @denied.actions.map(&:to_sym)
  @actions         = @actions.map(&:to_sym)
  @formats         = @formats.map(&:to_sym)
  ensure_valid_members(@actions,        VALID_ACTIONS, 'actions')
  ensure_valid_members(@denied.actions, VALID_ACTIONS, 'denied.actions')
  ensure_valid_members(@formats,        VALID_FORMATS, 'formats')
  @identifier    ||= :id
  @klass         ||= target.name.gsub(/ControllerTest$/, '').singularize.constantize
  @object        ||= @klass.name.tableize.singularize
  @parent        ||= []
  @parent          = [@parent] unless @parent.is_a? Array
  collection_helper = [@parent, @object.to_s.pluralize, 'url'].flatten.join('_')
  collection_args   = @parent.map {|n| "@#{object}.#{n}"}.join(', ')
  @destroy.redirect ||= "#{collection_helper}(#{collection_args})"
  member_helper = [@parent, @object, 'url'].flatten.join('_')
  member_args   = [@parent.map {|n| "@#{object}.#{n}"}, "@#{object}"].flatten.join(', ')
  @create.redirect  ||= "#{member_helper}(#{member_args})"
  @update.redirect  ||= "#{member_helper}(#{member_args})"
  @denied.redirect  ||= "new_session_url"
end