Sha256: cfd6ff8c77a2687e923c3b0a7d09a02c826082d77a03c96556614d5dd39d4488

Contents?: true

Size: 696 Bytes

Versions: 3

Compression:

Stored size: 696 Bytes

Contents

module Speedos
  class Record
    include Mongoid::Document
    include Mongoid::Timestamps

    field :success, type: Boolean
    field :log

    scope :successful, ->() { where(success: true) }

    def entries
      self.log['entries']
    end

    def pages
      self.log['pages'].reject{ |p| p['id'].empty? }.map{ |p| page(p['id']) }
    end

    def page name
      Entries.new(entries.select{ |p| p["pageref"] == name })
    end

    def self.report
      Record.successful.all.each do |record|
        puts record.id
        record.pages.each do |page|
          puts "  %-30s %ss" % [page.all_names.first, (page.total_load_time / 1000).round(5)]
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
speedos-0.0.3 lib/speedos/models/record.rb
speedos-0.0.2 lib/speedos/models/record.rb
speedos-0.0.1 lib/speedos/models/record.rb