Class: Omnitest::Command::Test

Inherits:
Base
  • Object
show all
Includes:
RunAction
Defined in:
lib/omnitest/command/test.rb

Overview

Command to test one or more instances.

Instance Method Summary collapse

Methods included from RunAction

#run_action

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from Omnitest::Command::Base

Instance Method Details

#callObject

Invoke the command.



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/omnitest/command/test.rb', line 12

def call
  banner "Starting Omnitest (v#{Omnitest::VERSION})"
  scenarios = nil
  elapsed = Benchmark.measure do
    setup
    scenarios = parse_subcommand(args.shift, args.shift)

    run_action(scenarios, :test, options[:concurrency])
  end
  banner "Omnitest is finished. #{Core::Util.duration(elapsed.real)}"
  test_summary(scenarios)
end

#test_summary(scenarios) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/omnitest/command/test.rb', line 25

def test_summary(scenarios)
  # TODO: Need an actual test summary
  failed_scenarios = scenarios.select do | s |
    !s.status_description.match(/Fully Verified|<Not Found>/)
  end

  shell.say
  failed_scenarios.each do | scenario |
    shell.say_status scenario.status_description, scenario.slug
  end
  status_line = "#{scenarios.size} scenarios, #{failed_scenarios.size} failures" # , x pending
  shell.say status_line
  abort unless failed_scenarios.empty?
end