Class: Inspec::RunnerRspec

Inherits:
Object
  • Object
show all
Defined in:
lib/inspec/runner_rspec.rb

Instance Method Summary collapse

Constructor Details

#initialize(conf) ⇒ RunnerRspec

Returns a new instance of RunnerRspec.



17
18
19
20
21
# File 'lib/inspec/runner_rspec.rb', line 17

def initialize(conf)
  @conf = conf
  reset_tests
  configure_output
end

Instance Method Details

#add_test(example, rule_id) ⇒ nil

Add an example group to the list of registered tests.

Parameters:

  • example (RSpecExampleGroup)

    test

  • rule_id (String)

    the ID associated with this check

Returns:

  • (nil)


37
38
39
40
# File 'lib/inspec/runner_rspec.rb', line 37

def add_test(example, rule_id)
  set_rspec_ids(example, rule_id)
  @tests.register(example)
end

#example_group(*args, &block) ⇒ RSpecExampleGroup

Create a new RSpec example group from arguments and block.

Parameters:

  • *args (Type)

    list of arguments for this example

  • &block (Type)

    the block associated with this example group

Returns:

  • (RSpecExampleGroup)


28
29
30
# File 'lib/inspec/runner_rspec.rb', line 28

def example_group(*args, &block)
  RSpec::Core::ExampleGroup.describe(*args, &block)
end

#run(with = nil) ⇒ int

Run all registered tests with an optional test runner.

Parameters:

  • with (RSpecRunner) (defaults to: nil)

    is an optional RSpecRunner

Returns:

  • (int)

    0 if all went well; otherwise nonzero



53
54
55
56
# File 'lib/inspec/runner_rspec.rb', line 53

def run(with = nil)
  with ||= RSpec::Core::Runner.new(nil)
  with.run_specs(tests)
end

#testsArray

Retrieve the list of tests that have been added.

Returns:

  • (Array)

    full list of tests



45
46
47
# File 'lib/inspec/runner_rspec.rb', line 45

def tests
  @tests.ordered_example_groups
end