4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# File 'lib/jkr/analysis.rb', line 4
def self.analyze(env, resultset_num)
resultset_num = sprintf "%03d", resultset_num.to_i
resultset_dir = Dir.glob(File.join(env.jkr_result_dir, resultset_num)+"*")
if resultset_dir.size != 1
raise RuntimeError.new "cannot specify resultset dir (#{resultset_dir.join(" ")})"
end
resultset_dir = resultset_dir.first
plan_files = Dir.glob(File.join(resultset_dir, "*.plan"))
if plan_files.size == 0
raise RuntimeError.new "cannot find plan file"
elsif plan_files.size > 1
raise RuntimeError.new "there are two or more plan files"
end
plan_file_path = plan_files.first
plan = Jkr::Plan.new(env, plan_file_path)
Jkr::AnalysisUtils.define_analysis_utils(resultset_dir, plan)
plan.analysis.call(plan)
Jkr::AnalysisUtils.undef_analysis_utils(plan)
end
|