[Issue #5] - Reworked app to better organize results with their corresponding tests
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
class Benchmark < Sequel::Model
|
||||
|
||||
one_to_many :results
|
||||
one_to_many :tests
|
||||
|
||||
end
|
||||
|
@ -1,5 +1,5 @@
|
||||
class Hardware < Sequel::Model(:hardware)
|
||||
|
||||
one_to_many :results
|
||||
one_to_many :tests
|
||||
|
||||
end
|
||||
|
@ -1,3 +1,4 @@
|
||||
require_relative 'hardware'
|
||||
require_relative 'benchmark'
|
||||
require_relative 'result'
|
||||
require_relative 'test'
|
||||
|
@ -1,7 +1,6 @@
|
||||
class Result < Sequel::Model
|
||||
|
||||
many_to_one :hardware
|
||||
many_to_one :benchmark
|
||||
many_to_one :test
|
||||
|
||||
def formatted_score()
|
||||
return self.score
|
||||
|
27
src/models/test.rb
Normal file
27
src/models/test.rb
Normal file
@ -0,0 +1,27 @@
|
||||
class Test < Sequel::Model
|
||||
|
||||
one_to_many :results # link Test model to its related results
|
||||
many_to_one :benchmark # link Test model back to its benchmark
|
||||
many_to_one :hardware # link Test model back to hardware used in test
|
||||
|
||||
# formats the name of the test for display in the web UI
|
||||
def formatted_name()
|
||||
return "#{self.date_tag} - #{self.hardware.name} / #{self.benchmark.name}"
|
||||
end
|
||||
|
||||
# formats the name of the test for use in a graph
|
||||
def graph_name()
|
||||
return "#{self.hardware.name} (#{self.date_tag})"
|
||||
end
|
||||
|
||||
# determines whether the test has enough results to fulfill the requirement
|
||||
def valid?()
|
||||
return (self.results.length >= $conf.get('testing.minimum_results_required'))
|
||||
end
|
||||
|
||||
# determines how many results are still missing for a test
|
||||
def missing_results()
|
||||
return ($conf.get('testing.minimum_results_required') - self.results.length)
|
||||
end
|
||||
|
||||
end
|
Reference in New Issue
Block a user