Sha256: 053ec177f5f235ed9c6e0413cc3972f7e761d2f44dc0565976edc3ade3af6ea3

Contents?: true

Size: 756 Bytes

Versions: 11

Compression:

Stored size: 756 Bytes

Contents

module Cucumber
  module Ast
    class Features
      include Enumerable

      attr_reader :duration

      def initialize
        @features = []
      end

      def [](index)
        @features[index]
      end

      def each(&proc)
        @features.each(&proc)
      end

      def add_feature(feature)
        feature.features = self
        @features << feature
      end

      def accept(visitor)
        return if $cucumber_interrupted
        start = Time.now
        self.each do |feature|
          visitor.visit_feature(feature)
        end
        @duration = Time.now - start
      end

      def tag_count(tag)
        @features.inject(0){|count, feature| count += feature.feature_and_children_tag_count(tag)}
      end

    end
  end
end

Version data entries

11 entries across 11 versions & 4 rubygems

Version Path
aslakhellesoy-cucumber-0.3.94.1 lib/cucumber/ast/features.rb
aslakhellesoy-cucumber-0.3.94 lib/cucumber/ast/features.rb
aslakhellesoy-cucumber-0.3.95 lib/cucumber/ast/features.rb
aslakhellesoy-cucumber-0.3.96 lib/cucumber/ast/features.rb
kosmas58-cucumber-0.3.94 lib/cucumber/ast/features.rb
kosmas58-cucumber-0.3.95 lib/cucumber/ast/features.rb
kosmas58-cucumber-0.3.96 lib/cucumber/ast/features.rb
pezra-cucumber-0.3.94.1 lib/cucumber/ast/features.rb
cucumber-0.3.96 lib/cucumber/ast/features.rb
cucumber-0.3.95 lib/cucumber/ast/features.rb
cucumber-0.3.94 lib/cucumber/ast/features.rb