class RSpec::Core::Formatters::DocumentationFormatter

def add_example_group(example_group)

def add_example_group(example_group)
  super
  example_group_chain.each_with_index do |nested_example_group, i|
    unless nested_example_group == @previous_nested_example_groups[i]
      output.puts if i == 0
      output.puts "#{'  ' * i}#{nested_example_group.description}"
    end
  end
  @previous_nested_example_groups = example_group_chain
end

def current_indentation

def current_indentation
  '  ' * @previous_nested_example_groups.size
end

def example_failed(example)

def example_failed(example)
  super
  output.puts failure_output(example, example.execution_result[:exception_encountered])
end

def example_group_chain

def example_group_chain
  example_group.ancestors.reverse
end

def example_passed(example)

def example_passed(example)
  super
  output.puts passed_output(example)
end

def example_pending(example)

def example_pending(example)
  super
  output.puts pending_output(example, example.execution_result[:pending_message])
end

def failure_output(example, exception)

def failure_output(example, exception)
  red("#{current_indentation}#{example.description} (FAILED - #{next_failure_index})")
end

def initialize(output)

def initialize(output)
  super(output)
  @previous_nested_example_groups = []
end

def next_failure_index

def next_failure_index
  @next_failure_index ||= 0
  @next_failure_index += 1
end

def passed_output(example)

def passed_output(example)
  green("#{current_indentation}#{example.description}")
end

def pending_output(example, message)

def pending_output(example, message)
  yellow("#{current_indentation}#{example.description} (PENDING: #{message})")
end