Sha256: 2003283a3c511a477ad237304b8e1487d9420d68228e2ac4aa2440e29088246c

Contents?: true

Size: 1.08 KB

Versions: 8

Compression:

Stored size: 1.08 KB

Contents

class RailsInfo::Logs::Test::RspecPresenter < ::RailsInfo::Presenter
  def initialize(subject, options = {})
    super(subject, options)
    
    @rails_info_log = ::RailsInfo::Logs::Test::Rspec.new(
      log: options[:log], debug: options[:debug]
    )
  end
  
  def summary
    text = ["#{@rails_info_log.number_of_files} files"]
    text << @rails_info_log.summary unless @rails_info_log.summary.blank?
    
    content_tag :p, text.join(', ')
  end
  
  def accordion
    @index = 0
    
    if @rails_info_log.hash.is_a?(Hash)
      content_tag :div, id: 'files', class: 'accordions' do
        html = ''
      
        @rails_info_log.hash.each do |file, examples|
          file_presenter = ::RailsInfo::Logs::Test::Rspec::FilePresenter.new(
            @subject, name: "#{file} (#{examples.length})", 
            tabs_data: examples, index: @index, rails_root: @rails_info_log.rails_root
          )
          @index += 1
          html += raw file_presenter.tabs
        end  
        
        raw html
      end  
    else
      content_tag :pre, @rails_info_log.hash.join("\n")
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
rails_info-0.1.1 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.1.0 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.9 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.8 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.7 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.6 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.5 app/presenters/rails_info/logs/test/rspec_presenter.rb
rails_info-0.0.4 app/presenters/rails_info/logs/test/rspec_presenter.rb