lib/generative/formatters.rb in generative-0.1.0 vs lib/generative/formatters.rb in generative-0.2.0.pre1

- old
+ new

@@ -12,57 +12,59 @@ end end require 'rspec/core/formatters/documentation_formatter' -class Generative < RSpec::Core::Formatters::DocumentationFormatter - def initialize(output) - super(output) - end +module Generative + class Formatter < RSpec::Core::Formatters::DocumentationFormatter + def initialize(output) + super(output) + end - def example_group_started(example_group) - @example_group = example_group + def example_group_started(example_group) + @example_group = example_group - output.puts if @group_level == 0 + output.puts if @group_level == 0 - if generative?(example_group) - output.puts "#{current_indentation}#{detail_color('generative')}" + if generative?(example_group) + output.puts "#{current_indentation}#{detail_color('generative')}" - @group_level += 1 - example_group.examples.each do |example| - output.puts "#{current_indentation}#{detail_color(example.description)}" + @group_level += 1 + example_group.examples.each do |example| + output.puts "#{current_indentation}#{detail_color(example.description)}" + end + + @group_level -= 1 + else + output.puts "#{current_indentation}#{example_group.description.strip}" end - @group_level -= 1 - else - output.puts "#{current_indentation}#{example_group.description.strip}" + @group_level += 1 end - @group_level += 1 - end + def example_passed(example) + return if generative?(example) - def example_passed(example) - return if generative?(example) + super(example) + end - super(example) - end + def example_pending(example) + return if generative?(example) - def example_pending(example) - return if generative?(example) + super(example) + end - super(example) - end + def example_failed(example) + if generative?(example) + RSpec.wants_to_quit = true + end - def example_failed(example) - if generative?(example) - RSpec.wants_to_quit = true + super(example) end - super(example) - end + private - private - - def generative?(example) - example.metadata[:generative] + def generative?(example) + example.metadata[:generative] + end end end