Sha256: c51d526db0d02cc0d553c5116aecef9f1caf5350eda1ddab6537b43971d3e497

Contents?: true

Size: 1.08 KB

Versions: 1

Compression:

Stored size: 1.08 KB

Contents

# encoding: UTF-8

module CucumberMonitor
  class Base

    def self.features_path
      Dir.pwd.to_s + '/features'
    end

    def self.cucumber_output_file
      Dir.pwd.to_s + '/tmp/cucumber.out'
    end

    def locate
      "Printing: #{I18n.t("feature")}"
    end

    def files
      collection = []
      dir_entries = Dir.entries(self.class.features_path)
      search_and_include_features(dir_entries)
    end

    def search_and_include_features(dir_entries, collection=[])
      dir_entries.each do |entrie|
        if entrie.include?('.feature')
          collection << entrie
        end
      end
      collection
    end

    def features
      collection = []
      files.each do |file|
        collection << CucumberMonitor::FeatureFile.new(file)  
      end
      collection
    end

    def search(criteria)
      results = []
      features.each do |feature|
        feature.scenarios.each do |scenario|
          scenario.steps.each do |step|
            results << step if step.description.include?(criteria)
          end
        end
      end
      results
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cucumber_monitor-0.0.4 lib/cucumber_monitor/base.rb