Class: Cwb::BenchmarkSuite

Inherits:
Object
  • Object
show all
Defined in:
lib/cwb/benchmark_suite.rb

Instance Method Summary collapse

Constructor Details

#initialize(working_dir = Dir.pwd) ⇒ BenchmarkSuite

Returns a new instance of BenchmarkSuite.



3
4
5
6
# File 'lib/cwb/benchmark_suite.rb', line 3

def initialize(working_dir = Dir.pwd)
  @cwb = Cwb::Client.instance
  @working_dir = working_dir
end

Instance Method Details

#execute_all(cwb_benchmarks) ⇒ Object



16
17
18
19
20
# File 'lib/cwb/benchmark_suite.rb', line 16

def execute_all(cwb_benchmarks)
  cwb_benchmarks.each do |cwb_benchmark|
    cwb_benchmark.execute_in_working_dir
  end
end

#execute_suite(cwb_benchmarks) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/cwb/benchmark_suite.rb', line 8

def execute_suite(cwb_benchmarks)
  execute_all(cwb_benchmarks)
  @cwb.notify_finished_execution
rescue => error
  @cwb.notify_failed_execution(error.message)
  raise error
end

#get(clazz, cwb_benchmarks) ⇒ Object

Lookup the implementation of a certain benchmark



23
24
25
# File 'lib/cwb/benchmark_suite.rb', line 23

def get(clazz, cwb_benchmarks)
  cwb_benchmarks.select{|cwb_benchmark| cwb_benchmark.instance_of?(clazz) }.first
end

#get_list(clazzes, cwb_benchmarks) ⇒ Object



27
28
29
30
31
32
33
# File 'lib/cwb/benchmark_suite.rb', line 27

def get_list(clazzes, cwb_benchmarks)
  list = []
  clazzes.each do |clazz|
    list << get(clazz, cwb_benchmarks)
  end
  list
end