Class: Teabag::Console

Inherits:
Object
  • Object
show all
Defined in:
lib/teabag/console.rb

Instance Method Summary collapse

Constructor Details

#initialize(options = nil, files = []) ⇒ Console

Returns a new instance of Console.



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/teabag/console.rb', line 7

def initialize(options = nil, files = [])
  @options = options || {}
  @suites = {}
  @files = []

  Teabag::Environment.load(@options)
  Rails.application.config.assets.debug = false if Teabag.configuration.driver == "phantomjs"

  start_server
  resolve(files)
end

Instance Method Details

#execute(options = {}, files = []) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/teabag/console.rb', line 19

def execute(options = {}, files = [])
  @options = @options.merge(options) if options.present?
  resolve(files)

  failure_count = 0
  suites.each do |suite|
    STDOUT.print "Teabag running #{suite} suite at #{url(suite)}\n" unless Teabag.configuration.suppress_log
    failure_count += run_specs(suite)
  end
  failure_count > 0
rescue Teabag::Failure
  true
rescue Teabag::RunnerException
  true
end

#run_specs(suite) ⇒ Object



35
36
37
38
39
40
# File 'lib/teabag/console.rb', line 35

def run_specs(suite)
  url = url(suite)
  url += url.include?("?") ? "&" : "?"
  url += "reporter=Console"
  driver.run_specs(suite, url)
end