Sha256: a5726a8a433fa544837b3b317ce7b7f63e30f06b4ee4e3b807ce2f9d483a6393

Contents?: true

Size: 1.29 KB

Versions: 1

Compression:

Stored size: 1.29 KB

Contents

require 'thor'

module CucumberSlice
  class Cli < Thor

    desc "list", "list the features cucumber-slice thinks should run"
    long_desc <<-LONGDESC
      `cucumber-slice list` will print a list of all feature files that it
      thinks should be run based on the current changeset of files since the
      previous passing run.

      > $ cucumber-slice list --since a3989b6

      If the `since` option is not supplied, then HEAD is assumed and uncommitted
      changes in your working

      > $ cucumber-slice list

      In the event you don't want to filter out any features (perhaps following an
      unstable build), you can use the `--all` option to prevent filtering

      > $ cucumber-slice list --since a3989b6 --all true

      If the features you wish to filter are anywhere but <git_root>/features, you can specify them:

      > $ cucumber-slice list --since a3989b6 --features "project/features"

    LONGDESC
    option :since, :type => :string, :default => "HEAD", :banner => "REV"
    option :all, :type => :boolean, :default => false
    option :features, :default => "features", :aliases => ["f"]
    def list
      require 'cucumber_slice/lists_features'
      features = ListsFeatures.new(options[:features], options[:since], !!options[:all])
      puts features.list
    end

  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cucumber-slice-0.0.1 lib/cucumber_slice/cli.rb