web/app/models/benchmark_result.rb
author Marcel Hlopko <marcel.hlopko@gmail.com>
Sat, 22 Jun 2013 10:20:54 +0200
changeset 68 ea16cf625333
parent 65 a37ce193f555
child 70 e9c892b1c82b
permissions -rw-r--r--
add results page

# == Schema Information
#
# Table name: benchmark_results
#
#  id                         :integer          not null, primary key
#  benchmark_info_id          :integer
#  language_implementation_id :integer
#  performed_at               :datetime
#  created_at                 :datetime
#  updated_at                 :datetime
#  benchmark_batch_id         :integer
#

class BenchmarkResult < ActiveRecord::Base

  belongs_to :benchmark_info, dependent: :destroy, inverse_of: :benchmark_results
  belongs_to :benchmark_batch, dependent: :destroy, inverse_of: :benchmark_results
  has_many :benchmark_durations, inverse_of: :benchmark_result
  has_many :benchmark_parameters, inverse_of: :benchmark_result

  def average_duration
    sum = benchmark_durations.inject(0) { |acc, val| acc += val.duration }
    sum / benchmark_durations.size
  end

end