def report(test)
      case test.result
      when :success
        if @type == :test
          print_test_success(test)
        else
          print_generate_success(test)
        end
        @success += 1

      when :skipped
        if @type == :test
          print_test_skipped(test)
        else
          print_generate_skipped(test)
        end
        @skipped += 1

      # Generate can't fail directly
      when :failed
        print_test_failed(test)
        @failed += 1

      when :timedout
        if @type == :test
          print_test_timeout(test)
        else
          print_generate_timeout(test)
        end
        @failed += 1
      end
    end
def report(test)
      case test.result
      when :success
        if @type == :test
          print_test_success(test)
        else
          print_generate_success(test)
        end
        @success += 1

      when :skipped
        if @type == :test
          print_test_skipped(test)
        else
          print_generate_skipped(test)
        end
        @skipped += 1

      # Generate can't fail directly
      when :failed
        print_test_failed(test)
        @failed += 1

      when :timedout
        if @type == :test
          print_test_timeout(test)
        else
          print_generate_timeout(test)
        end
        @failed += 1
      end
    end
Initialize a new Reporter

 type - The type (Symbol) of the suite

 Initialize counters for all result types
 Main interface for reporting
 Reports the result of a single test or generation

 test - A test object that has been run

 Returns nothing