Sha256: e4987cba82589437628e6c5ce66709e1b66d480794d009a6ef23e68404b98540

Contents?: true

Size: 1011 Bytes

Versions: 4

Compression:

Stored size: 1011 Bytes

Contents

module Idonethis::UseCases
  class Options
    class << self
      def parse(argv={})
        args = {}

        require 'optparse'
        
        OptionParser.new do |opts|
          opts.banner = "Usage: command [options]"

          opts.on("-v", "--verbose", "Run verbosely") do |v|
            args[:verbose] = v
          end

          opts.on("-m MESSAGE", "Message") do |m|
            args[:message] = m
          end

          opts.on("-d", "Dry run") do |_|
            args[:dry_run] = true
          end
          
          opts.on("-t TEAM", "--team TEAM" "Run against this team") do |team_name|
            args[:team] = team_name
          end

          opts.on("-s WHEN", "--since WHEN" "Show git commits since when") do |value|
            args[:since] = value
          end

          opts.on("-d DATE", "--date DATE" "Set done date, defaults to now") do |value|
            args[:date] = value
          end
        end.parse!(argv)
        
        args
      end
    end
  end
end  

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
idonethis-cli-0.20.0 lib/idonethis/use_cases/options.rb
idonethis-cli-0.19.1 lib/idonethis/use_cases/options.rb
idonethis-cli-0.19.0 lib/idonethis/use_cases/options.rb
idonethis-cli-0.15.0 lib/idonethis/use_cases/options.rb