# File lib/abingo_view_helper.rb, line 5
  def ab_test(abingo, test_name, alternatives = nil, options = {}, &block)

    if (Abingo.options[:enable_specification] && !params[test_name].nil?)
      choice = params[test_name]
    elsif (Abingo.options[:enable_override_in_session] && !session[test_name].nil?)
      choice = session[test_name]
    elsif (alternatives.nil?)
      choice = abingo.flip(test_name)
    else
      choice = abingo.test(test_name, alternatives, options)
    end

    if block
      content_tag = capture(choice, &block)
      block_called_from_erb?(block) ? concat(content_tag) : content_tag
    else
      choice
    end
  end