Class: Judges::Test

Inherits:
Object
  • Object
show all
Defined in:
lib/judges/commands/test.rb

Overview

Test.

Author

Yegor Bugayenko (yegor256@gmail.com)

Copyright

Copyright © 2024 Yegor Bugayenko

License

MIT

Instance Method Summary collapse

Constructor Details

#initialize(loog) ⇒ Test

Returns a new instance of Test.



34
35
36
# File 'lib/judges/commands/test.rb', line 34

def initialize(loog)
  @loog = loog
end

Instance Method Details

#run(_opts, args) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
# File 'lib/judges/commands/test.rb', line 38

def run(_opts, args)
  raise 'Exactly one argument required' unless args.size == 1
  dir = args[0]
  @loog.info("Testing judges in #{dir}...")
  done = Judges::Packs.new(dir, @loog).each_with_index do |p, i|
    @loog.info("Testing #{p.script} in #{p.dir}...")
    p.tests.each do |t|
      test_one(p, t)
    end
    @loog.info("Pack ##{i} found in #{p.dir}")
  end
  @loog.info("#{done} judges tested")
end