def formatter=(formatter_to_use)
if string_const?(formatter_to_use) && (class_name = eval(formatter_to_use)).is_a?(Class)
formatter_class = class_name
elsif formatter_to_use.is_a?(Class)
formatter_class = formatter_to_use
else
formatter_class = case formatter_to_use.to_s
when 'd', 'doc', 'documentation', 's', 'n', 'spec', 'nested'
RSpec::Core::Formatters::DocumentationFormatter
when 'h', 'html'
RSpec::Core::Formatters::HtmlFormatter
when 't', 'textmate'
RSpec::Core::Formatters::TextMateFormatter
when 'p', 'progress'
RSpec::Core::Formatters::ProgressFormatter
else
raise ArgumentError, "Formatter '#{formatter_to_use}' unknown - maybe you meant 'documentation' or 'progress'?."
end
end
self.formatter_class = formatter_class
end