Sha256: 06413776acf41aeb5fd9e8c9052c5e16942d06c9b0af581a1eeab99abbc49483

Contents?: true

Size: 1.25 KB

Versions: 60

Compression:

Stored size: 1.25 KB

Contents

module Spec
  module Runner
    class ExampleGroupRunner
      def initialize(options)
        @options = options
      end

      def load_files(files)
        # It's important that loading files (or choosing not to) stays the
        # responsibility of the ExampleGroupRunner. Some implementations (like)
        # the one using DRb may choose *not* to load files, but instead tell
        # someone else to do it over the wire.
        files.each do |file|
          load file
        end
      end

      def run
        prepare
        success = true
        example_groups.each do |example_group|
          success = success & example_group.run
        end
        return success
      ensure
        finish
      end

      protected
      def prepare
        reporter.start(number_of_examples)
        example_groups.reverse! if reverse
      end

      def finish
        reporter.end
        reporter.dump
      end

      def reporter
        @options.reporter
      end

      def reverse
        @options.reverse
      end

      def example_groups
        @options.example_groups
      end

      def number_of_examples
        @options.number_of_examples
      end
    end
    # TODO: BT - Deprecate BehaviourRunner?
    BehaviourRunner = ExampleGroupRunner
  end
end

Version data entries

60 entries across 60 versions & 10 rubygems

Version Path
rspec-1.1.4 lib/spec/runner/example_group_runner.rb
rspec-1.1.6 lib/spec/runner/example_group_runner.rb
rspec-1.1.9 lib/spec/runner/example_group_runner.rb
rspec-1.1.8 lib/spec/runner/example_group_runner.rb
spree-0.2.0 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
spree-0.4.0 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
spree-0.4.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
spree-0.5.0 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
spree-0.5.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.0.2 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.0.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.0.3.98.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.0 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.0.3.98 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.1.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.1.2 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.1.3 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.1.98 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.1 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb
typo-5.2 vendor/plugins/rspec/lib/spec/runner/example_group_runner.rb