cukesparse 1.0.11 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +14 -6
- data/Gemfile +2 -2
- data/README.md +73 -14
- data/config/tasks.yml +28 -1
- data/cukesparse.gemspec +3 -3
- data/lib/cukesparse.rb +62 -21
- data/report.html +0 -0
- data/spec/cukesparse_spec.rb +137 -26
- data/spec/spec_files/valid_tasks.yml +25 -5
- metadata +7 -6
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,15 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 | 
            -
             | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 2 | 
            +
            !binary "U0hBMQ==":
         | 
| 3 | 
            +
              metadata.gz: !binary |-
         | 
| 4 | 
            +
                N2FkNTQ5ZjkyZWZjN2U3MmZhMTJlNjk5YWU0MjAyMTAxMTNlYmM5Zg==
         | 
| 5 | 
            +
              data.tar.gz: !binary |-
         | 
| 6 | 
            +
                ZDQ2YmQ0YTQwMzU3N2JlOWQxYTBiMGZhZjJmYjNkMTFmMmVjMjcxOA==
         | 
| 7 | 
            +
            !binary "U0hBNTEy":
         | 
| 8 | 
            +
              metadata.gz: !binary |-
         | 
| 9 | 
            +
                YzJlMzcxNTExYjE5OWE0ZWRmNGI2ZWIwY2QyOWViMzM2OGU1NzI3Y2E2OTgw
         | 
| 10 | 
            +
                YjU0Yjg4NmJmNThhNmE3M2IxM2EzZWM3ZjZjNmJlNGEzMDU3ZDhmMzJiODcy
         | 
| 11 | 
            +
                MTg1YTkwZDI1NDVjNGIzMTVhOThiNDFmMmE2ZDEzMzYzN2I3YTA=
         | 
| 12 | 
            +
              data.tar.gz: !binary |-
         | 
| 13 | 
            +
                MjA2Yjk1NjM5N2ZhMjk1NjA4MTQ0YWJiMjkwODk3YmI4NjMyYzUxN2IyZjQ1
         | 
| 14 | 
            +
                OGRjMjc4ZDdmYTVhM2U0YTE2ZjQ2YzI1MzA3ZTJiM2E5NzFiNGY5NDAxZTgx
         | 
| 15 | 
            +
                ZDJlMGFkZTlkMTM1NWU4YjU3MjczZmUxZWZkOTcxODA4NTQzODM=
         | 
    
        data/Gemfile
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | @@ -4,18 +4,59 @@ | |
| 4 4 |  | 
| 5 5 | 
             
            #cukesparse
         | 
| 6 6 |  | 
| 7 | 
            -
            A simple command line parser to pass default and custom arguments into Cucumber.
         | 
| 7 | 
            +
            A simple command line parser to pass default and custom arguments into Cucumber with the power to define these as tasks in a config/tasks.yml file!
         | 
| 8 8 |  | 
| 9 9 | 
             
            ## Getting Started
         | 
| 10 | 
            -
            Cukesparse parses command line arguments and sets default arguments from the config/task.yml file. For example please see the example config  | 
| 10 | 
            +
            Cukesparse parses command line arguments and sets default arguments from the config/task.yml file. For example please see the full list of options within the example config below:
         | 
| 11 11 |  | 
| 12 12 | 
             
                test_task:
         | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
                   | 
| 13 | 
            +
                 feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                 # These cucumber defaults will be set if not passed in from cli
         | 
| 16 | 
            +
                 cucumber_defaults:
         | 
| 17 | 
            +
                  format: 'pretty'
         | 
| 18 | 
            +
                  name: ['feature1', 'feature2']
         | 
| 19 | 
            +
                  tags: ['tags1', 'tags2']
         | 
| 20 | 
            +
                  strict: true
         | 
| 21 | 
            +
                  verbose: true
         | 
| 22 | 
            +
                  dry_run: true
         | 
| 23 | 
            +
                  guess: true
         | 
| 24 | 
            +
                  expand: true
         | 
| 25 | 
            +
             | 
| 26 | 
            +
                 # These runtime defaults will be set if not passed in from cli
         | 
| 27 | 
            +
                 runtime_defaults:
         | 
| 28 | 
            +
                  environment: 'release'
         | 
| 29 | 
            +
                  log_level: 'debug'
         | 
| 30 | 
            +
                  cleanup: true
         | 
| 31 | 
            +
                  database: true
         | 
| 32 | 
            +
                  jenkins: true
         | 
| 33 | 
            +
                  retries: 5
         | 
| 34 | 
            +
                  timeout: 60
         | 
| 35 | 
            +
                  screen: 1280/1024
         | 
| 36 | 
            +
                  screenwidth: 1280
         | 
| 37 | 
            +
                  screenheight: 1024
         | 
| 38 | 
            +
                  position: 0/0
         | 
| 39 | 
            +
                  xposition: 0
         | 
| 40 | 
            +
                  yposition: 0
         | 
| 41 | 
            +
                  highlight: true
         | 
| 42 | 
            +
             | 
| 43 | 
            +
                 # Will always be added to end of of the system command
         | 
| 44 | 
            +
                 defaults: ['--format html', '--out report.html', '-P -s']
         | 
| 45 | 
            +
             | 
| 46 | 
            +
            You can have many highlevel tasks defined within your config/tasks.yml file. In the above example we only have the task `test_task`. Please note that the screen and position config options will set screenwidth/screenheight or xposition/yposition parameters. You should use screen/position or define the individual options only within the config file!
         | 
| 47 | 
            +
             | 
| 48 | 
            +
            ## Lets get it running!
         | 
| 49 | 
            +
             | 
| 50 | 
            +
            Lets say we have the following simple config file options defined:
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                test_task:
         | 
| 53 | 
            +
                 feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 54 | 
            +
                 cucumber_defaults:
         | 
| 55 | 
            +
                  format: 'pretty'
         | 
| 56 | 
            +
                 runtime_defaults:
         | 
| 57 | 
            +
                  environment: 'release'
         | 
| 58 | 
            +
                  log_level: 'debug'
         | 
| 59 | 
            +
                 defaults: ['--format html', '--out coverage/report.html', '-P -s']
         | 
| 19 60 |  | 
| 20 61 | 
             
            If you were to run the following command `cukesparse test_task -t test` cukesparse would be passed the following arguments:
         | 
| 21 62 |  | 
| @@ -23,15 +64,15 @@ If you were to run the following command `cukesparse test_task -t test` cukespar | |
| 23 64 |  | 
| 24 65 | 
             
            Cukesparse would then collate and produce the following parameters hash:
         | 
| 25 66 |  | 
| 26 | 
            -
                {:tags=>["--tags test"], :environment=>"ENVIRONMENT=release", :log_level=>"LOG_LEVEL=debug" | 
| 67 | 
            +
                {:tags=>["--tags test"], :format=>"--format pretty", :environment=>"ENVIRONMENT=release", :log_level=>"LOG_LEVEL=debug"}
         | 
| 27 68 |  | 
| 28 | 
            -
            As no `environment`, `log_level`  | 
| 69 | 
            +
            As no `environment`, `log_level` arguments were passed the runtime defaults from the config/tasks.yml are used. The following command line output would be produced and run:
         | 
| 29 70 |  | 
| 30 71 | 
             
                bundle exec cucumber --require features/ features/featureOne features/featureTwo features/featureThree --tags test
         | 
| 31 72 | 
             
                ENVIRONMENT=release LOG_LEVEL=debug FORMAT=pretty --format html --out coverage/report.html -P -s
         | 
| 32 73 |  | 
| 33 74 | 
             
            ## Parameters
         | 
| 34 | 
            -
            Cukesparse accepts the following  | 
| 75 | 
            +
            Cukesparse accepts the following command line arguments:
         | 
| 35 76 |  | 
| 36 77 | 
             
            ### Cucumber options
         | 
| 37 78 | 
             
                '-t'                e.g. -t @abc
         | 
| @@ -43,7 +84,7 @@ Cukesparse accepts the following parameters: | |
| 43 84 | 
             
                '-g --guess'
         | 
| 44 85 | 
             
                '-x --expand'
         | 
| 45 86 |  | 
| 46 | 
            -
            ###  | 
| 87 | 
            +
            ### Runtime options
         | 
| 47 88 | 
             
            All arguments below have been setup for a custom project but are useful.
         | 
| 48 89 |  | 
| 49 90 | 
             
            ### Global options
         | 
| @@ -63,8 +104,8 @@ All arguments below have been setup for a custom project but are useful. | |
| 63 104 | 
             
                '--timeout'         e.g. --timeout 60
         | 
| 64 105 |  | 
| 65 106 | 
             
            ### Driver Options
         | 
| 66 | 
            -
                '--screen'          e.g. --screen 1024 | 
| 67 | 
            -
                '--position'        e.g. --position 0 | 
| 107 | 
            +
                '--screen'          e.g. --screen 1024/1280
         | 
| 108 | 
            +
                '--position'        e.g. --position 0/0
         | 
| 68 109 | 
             
                '--screenwidth'     e.g. --screenwidth 1024
         | 
| 69 110 | 
             
                '--screenheight'    e.g. --screenheight 1280
         | 
| 70 111 | 
             
                '--xposition'       e.g. --xposition 0
         | 
| @@ -77,6 +118,24 @@ When the `--debug` argument is passed it only outputs what would have been produ | |
| 77 118 |  | 
| 78 119 | 
             
                '--debug'
         | 
| 79 120 |  | 
| 121 | 
            +
            So for example if you ran the following:
         | 
| 122 | 
            +
             | 
| 123 | 
            +
                cukesparse test_task -t test --debug
         | 
| 124 | 
            +
             | 
| 125 | 
            +
            You would get the following returned in the console:
         | 
| 126 | 
            +
             | 
| 127 | 
            +
                DEBUG: Outputting ARGV passed
         | 
| 128 | 
            +
                ["test_task", "-t", "test", "--debug"]
         | 
| 129 | 
            +
             | 
| 130 | 
            +
                DEBUG: Outputting parsed config file
         | 
| 131 | 
            +
                {"test_task"=>{"feature_order"=>["features/featureOne", "features/featureTwo", "features/featureThree"], "cucumber_defaults"=>{"format"=>"pretty"}, "runtime_defaults"=>{"environment"=>"release", "log_level"=>"debug"}, "defaults"=>["--format html", "--out coverage/report.html", "-P -s"]}}
         | 
| 132 | 
            +
             | 
| 133 | 
            +
                DEBUG: Outputting parameters created
         | 
| 134 | 
            +
                {:tags=>["--tags test"], :debug=>"DEBUG=TRUE", :format=>"--format pretty", :environment=>"ENVIRONMENT=release", :log_level=>"LOG_LEVEL=debug"}
         | 
| 135 | 
            +
             | 
| 136 | 
            +
                DEBUG: Outputting commandc created
         | 
| 137 | 
            +
                bundle exec cucumber --require features/ features/featureOne features/featureTwo features/featureThree --tags test DEBUG=TRUE --format pretty ENVIRONMENT=release LOG_LEVEL=debug --format html --out coverage/report.html -P -s
         | 
| 138 | 
            +
             | 
| 80 139 | 
             
            ## Tests
         | 
| 81 140 | 
             
            There are a number of unit tests which are included as part of this project which are run by rspec. Please run:
         | 
| 82 141 |  | 
    
        data/config/tasks.yml
    CHANGED
    
    | @@ -1,6 +1,33 @@ | |
| 1 1 | 
             
            test_task:
         | 
| 2 2 | 
             
             feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 3 | 
            +
             | 
| 4 | 
            +
             # These cucumber defaults be set if not passed in from cli
         | 
| 5 | 
            +
             cucumber_defaults:
         | 
| 6 | 
            +
              format: 'pretty'
         | 
| 7 | 
            +
              name: ['feature1', 'feature2']
         | 
| 8 | 
            +
              tags: ['tags1', 'tags2']
         | 
| 9 | 
            +
              strict: true
         | 
| 10 | 
            +
              verbose: true
         | 
| 11 | 
            +
              dry_run: true
         | 
| 12 | 
            +
              guess: true
         | 
| 13 | 
            +
              expand: true
         | 
| 14 | 
            +
             | 
| 15 | 
            +
             # These runtime defaults be set if not passed in from cli
         | 
| 3 16 | 
             
             runtime_defaults:
         | 
| 4 17 | 
             
              environment: 'release'
         | 
| 5 18 | 
             
              log_level: 'debug'
         | 
| 6 | 
            -
             | 
| 19 | 
            +
              cleanup: true
         | 
| 20 | 
            +
              database: true
         | 
| 21 | 
            +
              jenkins: true
         | 
| 22 | 
            +
              retries: 5
         | 
| 23 | 
            +
              timeout: 60
         | 
| 24 | 
            +
              screen: 1280/1024
         | 
| 25 | 
            +
              screenwidth: 1280
         | 
| 26 | 
            +
              screenheight: 1024
         | 
| 27 | 
            +
              position: 0/0
         | 
| 28 | 
            +
              xposition: 0
         | 
| 29 | 
            +
              yposition: 0
         | 
| 30 | 
            +
              highlight: true
         | 
| 31 | 
            +
             | 
| 32 | 
            +
             # Will always be added to end of of the system command
         | 
| 33 | 
            +
             defaults: ['--format html', '--out report.html', '-P -s']
         | 
    
        data/cukesparse.gemspec
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            Gem::Specification.new do |s|
         | 
| 2 2 | 
             
              s.name        = 'cukesparse'
         | 
| 3 | 
            -
              s.version     = ' | 
| 4 | 
            -
              s.date        = '2013-06- | 
| 3 | 
            +
              s.version     = '2.0.0'
         | 
| 4 | 
            +
              s.date        = '2013-06-08'
         | 
| 5 5 | 
             
              s.summary     = 'Cukesparse - cucumber command line parser'
         | 
| 6 6 | 
             
              s.description = 'A simple command line parser to pass arguments into Cucumber'
         | 
| 7 7 | 
             
              s.author      = 'Jonathan Chrisp'
         | 
| @@ -15,7 +15,7 @@ Gem::Specification.new do |s| | |
| 15 15 |  | 
| 16 16 | 
             
              s.add_runtime_dependency 'clik', '~> 0.1.0'
         | 
| 17 17 | 
             
              s.add_runtime_dependency 'colored', '~> 1.2'
         | 
| 18 | 
            -
              s.add_runtime_dependency 'cucumber', '~> 1.3. | 
| 18 | 
            +
              s.add_runtime_dependency 'cucumber', '~> 1.3.2'
         | 
| 19 19 |  | 
| 20 20 | 
             
              s.files         = `git ls-files`.split("\n")
         | 
| 21 21 | 
             
              s.executables   = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
         | 
    
        data/lib/cukesparse.rb
    CHANGED
    
    | @@ -5,7 +5,6 @@ require 'pry' | |
| 5 5 | 
             
            YAML::ENGINE.yamler = 'psych'
         | 
| 6 6 |  | 
| 7 7 | 
             
            module Cukesparse
         | 
| 8 | 
            -
             | 
| 9 8 | 
             
              class << self
         | 
| 10 9 | 
             
                attr_accessor :config_file, :config, :task, :parameters, :command
         | 
| 11 10 |  | 
| @@ -25,7 +24,7 @@ module Cukesparse | |
| 25 24 | 
             
                    cli argv,
         | 
| 26 25 | 
             
                    # Cucumber options
         | 
| 27 26 | 
             
                    '-t'            => lambda{ |t| add_multiple(:tags, t) },
         | 
| 28 | 
            -
                    '-n --name'     => lambda{ |n|  | 
| 27 | 
            +
                    '-n --name'     => lambda{ |n| add_multiple(:name, n) },
         | 
| 29 28 | 
             
                    '-f --format'   => ->(f){ @parameters[:format]    = "--format #{f}" },
         | 
| 30 29 | 
             
                    '-d --dry-run'  => ->{ @parameters[:dry_run]      = "--dry-run" },
         | 
| 31 30 | 
             
                    '-v --verbose'  => ->{ @parameters[:verbose]      = "--verbose" },
         | 
| @@ -72,12 +71,13 @@ module Cukesparse | |
| 72 71 | 
             
                def build_command
         | 
| 73 72 | 
             
                  check_for_task
         | 
| 74 73 | 
             
                  check_for_parameters
         | 
| 74 | 
            +
                  set_cucumber_defaults
         | 
| 75 75 | 
             
                  set_runtime_defaults
         | 
| 76 76 |  | 
| 77 77 | 
             
                  unless @task.empty? && @parameters.empty?
         | 
| 78 78 | 
             
                    @command.push 'bundle exec cucumber'
         | 
| 79 79 | 
             
                    @command.push '--require features/'
         | 
| 80 | 
            -
                     | 
| 80 | 
            +
                    @command.push task['feature_order'].join(' ')
         | 
| 81 81 | 
             
                    @parameters.each { |k,v| @command.push(v) }
         | 
| 82 82 | 
             
                    @command.push task['defaults'].join(' ')
         | 
| 83 83 | 
             
                  end
         | 
| @@ -98,32 +98,31 @@ module Cukesparse | |
| 98 98 | 
             
                  puts @config.inspect
         | 
| 99 99 | 
             
                  puts 'DEBUG: Outputting parameters created'.yellow
         | 
| 100 100 | 
             
                  puts @parameters.inspect
         | 
| 101 | 
            -
                  puts 'DEBUG: Outputting  | 
| 101 | 
            +
                  puts 'DEBUG: Outputting commandc created'.yellow
         | 
| 102 102 | 
             
                  puts @command.join(' ')
         | 
| 103 103 | 
             
                end
         | 
| 104 104 |  | 
| 105 105 | 
             
                # Loads the config file
         | 
| 106 106 | 
             
                def load_config
         | 
| 107 107 | 
             
                  begin
         | 
| 108 | 
            -
                   @config = YAML.load_file | 
| 108 | 
            +
                   @config = YAML.load_file @config_file
         | 
| 109 109 | 
             
                  rescue Psych::SyntaxError
         | 
| 110 110 | 
             
                    abort 'Your tasks file did not parse as expected!'.red.underline
         | 
| 111 111 | 
             
                  rescue Errno::ENOENT
         | 
| 112 112 | 
             
                    abort 'Your tasks file is missing!'.red.underline
         | 
| 113 113 | 
             
                  end
         | 
| 114 | 
            -
             | 
| 115 114 | 
             
                  self
         | 
| 116 115 | 
             
                end
         | 
| 117 116 |  | 
| 118 117 | 
             
                # Checks for task in arguments
         | 
| 119 118 | 
             
                def check_for_task
         | 
| 120 | 
            -
                   | 
| 121 | 
            -
                  if  | 
| 119 | 
            +
                  task = argv & @config.keys
         | 
| 120 | 
            +
                  if task.empty?
         | 
| 122 121 | 
             
                    abort 'ERROR: No task was passed to cukesparse!'.red.underline
         | 
| 123 | 
            -
                  elsif  | 
| 124 | 
            -
                     | 
| 122 | 
            +
                  elsif task.length > 1
         | 
| 123 | 
            +
                    puts 'WARN: Multiple tasks have been passed!'.yellow
         | 
| 125 124 | 
             
                  else
         | 
| 126 | 
            -
                    @task = @config[ | 
| 125 | 
            +
                    @task = @config[task[0]]
         | 
| 127 126 | 
             
                  end
         | 
| 128 127 | 
             
                end
         | 
| 129 128 |  | 
| @@ -136,10 +135,15 @@ module Cukesparse | |
| 136 135 |  | 
| 137 136 | 
             
                # Updates parameters based on config runtime defaults
         | 
| 138 137 | 
             
                def set_runtime_defaults
         | 
| 139 | 
            -
                  if @task.has_key? | 
| 140 | 
            -
                    @task['runtime_defaults'].each do |key,  | 
| 141 | 
            -
                       | 
| 142 | 
            -
             | 
| 138 | 
            +
                  if @task.has_key? 'runtime_defaults'
         | 
| 139 | 
            +
                    @task['runtime_defaults'].each do |key, val|
         | 
| 140 | 
            +
                      case key.to_sym
         | 
| 141 | 
            +
                      when :screen, :position
         | 
| 142 | 
            +
                        split_parameters(val, key.to_sym)
         | 
| 143 | 
            +
                      else
         | 
| 144 | 
            +
                        unless @parameters.has_key? key.to_sym
         | 
| 145 | 
            +
                          @parameters[key.to_sym] = key.upcase + '=' + val.to_s
         | 
| 146 | 
            +
                        end
         | 
| 143 147 | 
             
                      end
         | 
| 144 148 | 
             
                    end
         | 
| 145 149 | 
             
                  else
         | 
| @@ -147,20 +151,55 @@ module Cukesparse | |
| 147 151 | 
             
                  end
         | 
| 148 152 | 
             
                end
         | 
| 149 153 |  | 
| 154 | 
            +
                # Updates parameters based on config cucumber defaults
         | 
| 155 | 
            +
                def set_cucumber_defaults
         | 
| 156 | 
            +
                  if @task.has_key? 'cucumber_defaults'
         | 
| 157 | 
            +
                    @task['cucumber_defaults'].each do |key, val|
         | 
| 158 | 
            +
                      case key.to_sym
         | 
| 159 | 
            +
                      when :tags, :name
         | 
| 160 | 
            +
                        add_multiple key.to_sym, val
         | 
| 161 | 
            +
                      when :format
         | 
| 162 | 
            +
                        unless @parameters.has_key? key.to_sym
         | 
| 163 | 
            +
                          @parameters[key.to_sym] = '--' + key.downcase + ' ' + val.to_s
         | 
| 164 | 
            +
                        end
         | 
| 165 | 
            +
                      when :strict, :verbose, :guess, :expand
         | 
| 166 | 
            +
                        unless @parameters.has_key? key.to_sym && @parameters[key.to_sym] == true
         | 
| 167 | 
            +
                          @parameters[key.to_sym] = '--' + key.downcase
         | 
| 168 | 
            +
                        end
         | 
| 169 | 
            +
                      when :dry_run
         | 
| 170 | 
            +
                        unless @parameters.has_key? key.to_sym && @parameters[key.to_sym] == true
         | 
| 171 | 
            +
                          @parameters[key.to_sym] = '--dry-run'
         | 
| 172 | 
            +
                        end
         | 
| 173 | 
            +
                      else
         | 
| 174 | 
            +
                       puts 'WARN: The cucumber default ' + key.to_s + ' isn\'t a known option!'.yellow
         | 
| 175 | 
            +
                      end
         | 
| 176 | 
            +
                    end
         | 
| 177 | 
            +
                  else
         | 
| 178 | 
            +
                    puts 'WARN: The task has no cucumber defaults!'.yellow
         | 
| 179 | 
            +
                  end
         | 
| 180 | 
            +
                end
         | 
| 181 | 
            +
             | 
| 150 182 | 
             
                # Add multiple options to key
         | 
| 151 183 | 
             
                #
         | 
| 152 184 | 
             
                # @param [Symbol] key the key to store in options
         | 
| 153 185 | 
             
                # @param [String] val the arguments passed in for key
         | 
| 154 | 
            -
                def add_multiple | 
| 155 | 
            -
                   | 
| 186 | 
            +
                def add_multiple key, val
         | 
| 187 | 
            +
                  case val
         | 
| 188 | 
            +
                  when Array
         | 
| 189 | 
            +
                    val.each do |v|
         | 
| 190 | 
            +
                      (@parameters[key] ||= []).push '--' + key.to_s + ' ' + v.to_s
         | 
| 191 | 
            +
                    end
         | 
| 192 | 
            +
                  else
         | 
| 193 | 
            +
                    (@parameters[key] ||= []).push '--' + key.to_s + ' ' + val.to_s
         | 
| 194 | 
            +
                  end
         | 
| 156 195 | 
             
                end
         | 
| 157 196 |  | 
| 158 197 | 
             
                # Splits parameters passed
         | 
| 159 198 | 
             
                #
         | 
| 160 199 | 
             
                # @param [String] params the parameters passed
         | 
| 161 200 | 
             
                # @param [Symbol] sym the symbol passed
         | 
| 162 | 
            -
                def split_parameters | 
| 163 | 
            -
                  params = params.split | 
| 201 | 
            +
                def split_parameters params, sym
         | 
| 202 | 
            +
                  params = params.split '/'
         | 
| 164 203 | 
             
                  if params.length == 1
         | 
| 165 204 | 
             
                    abort "ERROR: You have not passed enough parameters in the #{sym.to_s} command line argument!".red.underline
         | 
| 166 205 | 
             
                  elsif params.length > 2
         | 
| @@ -169,9 +208,11 @@ module Cukesparse | |
| 169 208 |  | 
| 170 209 | 
             
                  case sym
         | 
| 171 210 | 
             
                  when :screen
         | 
| 172 | 
            -
                    @parameters[ | 
| 211 | 
            +
                    @parameters[:screenwidth]  = "SCREENWIDTH=#{params[0]}"
         | 
| 212 | 
            +
                    @parameters[:screenheight] = "SCREENHEIGHT=#{params[1]}"
         | 
| 173 213 | 
             
                  when :position
         | 
| 174 | 
            -
                    @parameters[ | 
| 214 | 
            +
                    @parameters[:xposition] = "XPOSITION=#{params[0]}"
         | 
| 215 | 
            +
                    @parameters[:yposition] = "YPOSITION=#{params[1]}"
         | 
| 175 216 | 
             
                  end
         | 
| 176 217 | 
             
                end
         | 
| 177 218 | 
             
              end
         | 
    
        data/report.html
    ADDED
    
    | 
            File without changes
         | 
    
        data/spec/cukesparse_spec.rb
    CHANGED
    
    | @@ -64,7 +64,7 @@ describe "cukesparse" do | |
| 64 64 | 
             
                end
         | 
| 65 65 |  | 
| 66 66 | 
             
                it "should have a name parameter value of test" do
         | 
| 67 | 
            -
                  Cukesparse.parameters[:name].should eql '--name name_test'
         | 
| 67 | 
            +
                  Cukesparse.parameters[:name].should eql ['--name name_test']
         | 
| 68 68 | 
             
                end
         | 
| 69 69 | 
             
              end
         | 
| 70 70 |  | 
| @@ -81,7 +81,7 @@ describe "cukesparse" do | |
| 81 81 | 
             
                end
         | 
| 82 82 |  | 
| 83 83 | 
             
                it "should have a name parameter value of test" do
         | 
| 84 | 
            -
                  Cukesparse.parameters[:name].should eql '--name name_test'
         | 
| 84 | 
            +
                  Cukesparse.parameters[:name].should eql ['--name name_test']
         | 
| 85 85 | 
             
                end
         | 
| 86 86 | 
             
              end
         | 
| 87 87 |  | 
| @@ -530,34 +530,50 @@ describe "cukesparse" do | |
| 530 530 | 
             
              context "when passed the --screen parameter" do
         | 
| 531 531 | 
             
                before :all do
         | 
| 532 532 | 
             
                  # Clear arguments as rspec passes in script path
         | 
| 533 | 
            -
                  ARGV.push('test_task', '--screen', '1280 | 
| 533 | 
            +
                  ARGV.push('test_task', '--screen', '1280/1024')
         | 
| 534 534 | 
             
                  Cukesparse.parameters = {}
         | 
| 535 535 | 
             
                  Cukesparse.parse_argv
         | 
| 536 536 | 
             
                end
         | 
| 537 537 |  | 
| 538 | 
            -
                it "should have a parameter of  | 
| 539 | 
            -
                  Cukesparse.parameters.should have_key : | 
| 538 | 
            +
                it "should have a parameter of screenwidth" do
         | 
| 539 | 
            +
                  Cukesparse.parameters.should have_key :screenwidth
         | 
| 540 | 
            +
                end
         | 
| 541 | 
            +
             | 
| 542 | 
            +
                it "should have a parameter of screenheight" do
         | 
| 543 | 
            +
                  Cukesparse.parameters.should have_key :screenheight
         | 
| 544 | 
            +
                end
         | 
| 545 | 
            +
             | 
| 546 | 
            +
                it "should have a screenwidth parameter value of SCREENWIDTH=1280" do
         | 
| 547 | 
            +
                  Cukesparse.parameters[:screenwidth].should eql 'SCREENWIDTH=1280'
         | 
| 540 548 | 
             
                end
         | 
| 541 549 |  | 
| 542 | 
            -
                it "should have a  | 
| 543 | 
            -
                  Cukesparse.parameters[: | 
| 550 | 
            +
                it "should have a screenheight parameter value of SCREENHEIGHT=1024" do
         | 
| 551 | 
            +
                  Cukesparse.parameters[:screenheight].should eql 'SCREENHEIGHT=1024'
         | 
| 544 552 | 
             
                end
         | 
| 545 553 | 
             
              end
         | 
| 546 554 |  | 
| 547 555 | 
             
              context "when passed the --position parameter" do
         | 
| 548 556 | 
             
                before :all do
         | 
| 549 557 | 
             
                  # Clear arguments as rspec passes in script path
         | 
| 550 | 
            -
                  ARGV.push('test_task', '--position', '0 | 
| 558 | 
            +
                  ARGV.push('test_task', '--position', '0/0')
         | 
| 551 559 | 
             
                  Cukesparse.parameters = {}
         | 
| 552 560 | 
             
                  Cukesparse.parse_argv
         | 
| 553 561 | 
             
                end
         | 
| 554 562 |  | 
| 555 | 
            -
                it "should have a parameter of  | 
| 556 | 
            -
                  Cukesparse.parameters.should have_key : | 
| 563 | 
            +
                it "should have a parameter of xposition" do
         | 
| 564 | 
            +
                  Cukesparse.parameters.should have_key :xposition
         | 
| 565 | 
            +
                end
         | 
| 566 | 
            +
             | 
| 567 | 
            +
                it "should have a parameter of yposition" do
         | 
| 568 | 
            +
                  Cukesparse.parameters.should have_key :yposition
         | 
| 569 | 
            +
                end
         | 
| 570 | 
            +
             | 
| 571 | 
            +
                it "should have a xposition parameter value of XPOSITION=0" do
         | 
| 572 | 
            +
                  Cukesparse.parameters[:xposition].should eql 'XPOSITION=0'
         | 
| 557 573 | 
             
                end
         | 
| 558 574 |  | 
| 559 | 
            -
                it "should have a  | 
| 560 | 
            -
                  Cukesparse.parameters[: | 
| 575 | 
            +
                it "should have a yposition parameter value of YPOSITION=0" do
         | 
| 576 | 
            +
                  Cukesparse.parameters[:yposition].should eql 'YPOSITION=0'
         | 
| 561 577 | 
             
                end
         | 
| 562 578 | 
             
              end
         | 
| 563 579 |  | 
| @@ -708,37 +724,121 @@ describe "cukesparse" do | |
| 708 724 | 
             
                it "should have runtime default parameters" do
         | 
| 709 725 | 
             
                  Cukesparse.parameters.should have_key :environment
         | 
| 710 726 | 
             
                  Cukesparse.parameters.should have_key :log_level
         | 
| 727 | 
            +
                  Cukesparse.parameters.should have_key :cleanup
         | 
| 728 | 
            +
                  Cukesparse.parameters.should have_key :database
         | 
| 729 | 
            +
                  Cukesparse.parameters.should have_key :jenkins
         | 
| 730 | 
            +
                  Cukesparse.parameters.should have_key :retries
         | 
| 731 | 
            +
                  Cukesparse.parameters.should have_key :timeout
         | 
| 732 | 
            +
                  Cukesparse.parameters.should have_key :screenwidth
         | 
| 733 | 
            +
                  Cukesparse.parameters.should have_key :screenheight
         | 
| 734 | 
            +
                  Cukesparse.parameters.should have_key :xposition
         | 
| 735 | 
            +
                  Cukesparse.parameters.should have_key :yposition
         | 
| 736 | 
            +
                  Cukesparse.parameters.should have_key :highlight
         | 
| 711 737 | 
             
                end
         | 
| 712 738 |  | 
| 713 739 | 
             
                it "should have the expected default runtime parameter values" do
         | 
| 714 740 | 
             
                  Cukesparse.parameters[:environment].should eql 'ENVIRONMENT=release'
         | 
| 715 741 | 
             
                  Cukesparse.parameters[:log_level].should eql 'LOG_LEVEL=debug'
         | 
| 742 | 
            +
                  Cukesparse.parameters[:cleanup].should eql 'CLEANUP=true'
         | 
| 743 | 
            +
                  Cukesparse.parameters[:database].should eql 'DATABASE=true'
         | 
| 744 | 
            +
                  Cukesparse.parameters[:jenkins].should eql 'JENKINS=true'
         | 
| 745 | 
            +
                  Cukesparse.parameters[:retries].should eql 'RETRIES=5'
         | 
| 746 | 
            +
                  Cukesparse.parameters[:timeout].should eql 'TIMEOUT=60'
         | 
| 747 | 
            +
                  Cukesparse.parameters[:screenwidth].should eql 'SCREENWIDTH=1280'
         | 
| 748 | 
            +
                  Cukesparse.parameters[:screenheight].should eql 'SCREENHEIGHT=1024'
         | 
| 749 | 
            +
                  Cukesparse.parameters[:xposition].should eql 'XPOSITION=0'
         | 
| 750 | 
            +
                  Cukesparse.parameters[:yposition].should eql 'YPOSITION=0'
         | 
| 751 | 
            +
                  Cukesparse.parameters[:highlight].should eql 'HIGHLIGHT=true'
         | 
| 752 | 
            +
                end
         | 
| 753 | 
            +
              end
         | 
| 754 | 
            +
             | 
| 755 | 
            +
              context "when running the test task cucumber default vars should be set when no arguments passed" do
         | 
| 756 | 
            +
                before :all do
         | 
| 757 | 
            +
                  # Clear arguments as rspec passes in script path
         | 
| 758 | 
            +
                  # Adding test tag to prevent raise
         | 
| 759 | 
            +
                  ARGV.push('test_task', '-t', 'test')
         | 
| 760 | 
            +
                  Cukesparse.parameters = {}
         | 
| 761 | 
            +
                  Cukesparse.configure {|c| c.config_file = './spec/spec_files/valid_tasks.yml'}
         | 
| 762 | 
            +
                  Cukesparse.load_config.parse_argv
         | 
| 763 | 
            +
                  Cukesparse.check_for_task
         | 
| 764 | 
            +
                  Cukesparse.check_for_parameters
         | 
| 765 | 
            +
                  Cukesparse.set_cucumber_defaults
         | 
| 766 | 
            +
                end
         | 
| 767 | 
            +
             | 
| 768 | 
            +
                it "should have cucumber default parameters" do
         | 
| 769 | 
            +
                  Cukesparse.parameters.should have_key :format
         | 
| 770 | 
            +
                  Cukesparse.parameters.should have_key :name
         | 
| 771 | 
            +
                  Cukesparse.parameters.should have_key :tags
         | 
| 772 | 
            +
                  Cukesparse.parameters.should have_key :strict
         | 
| 773 | 
            +
                  Cukesparse.parameters.should have_key :verbose
         | 
| 774 | 
            +
                  Cukesparse.parameters.should have_key :dry_run
         | 
| 775 | 
            +
                  Cukesparse.parameters.should have_key :guess
         | 
| 776 | 
            +
                  Cukesparse.parameters.should have_key :expand
         | 
| 777 | 
            +
                end
         | 
| 778 | 
            +
             | 
| 779 | 
            +
                it "should have the expected default runtime parameter values" do
         | 
| 780 | 
            +
                  Cukesparse.parameters[:format].should eql '--format pretty'
         | 
| 781 | 
            +
                  Cukesparse.parameters[:name].should eql ['--name feature1', '--name feature2']
         | 
| 782 | 
            +
                  Cukesparse.parameters[:tags].should eql ['--tags test', '--tags tags1', '--tags tags2']
         | 
| 783 | 
            +
                  Cukesparse.parameters[:strict].should eql '--strict'
         | 
| 784 | 
            +
                  Cukesparse.parameters[:verbose].should eql '--verbose'
         | 
| 785 | 
            +
                  Cukesparse.parameters[:dry_run].should eql '--dry-run'
         | 
| 786 | 
            +
                  Cukesparse.parameters[:guess].should eql '--guess'
         | 
| 787 | 
            +
                  Cukesparse.parameters[:expand].should eql '--expand'
         | 
| 716 788 | 
             
                end
         | 
| 717 789 | 
             
              end
         | 
| 718 790 |  | 
| 719 791 | 
             
              # add_multiple
         | 
| 720 | 
            -
              context "when add_multiple is called" do
         | 
| 721 | 
            -
                 | 
| 722 | 
            -
                  Cukesparse. | 
| 723 | 
            -
             | 
| 724 | 
            -
             | 
| 792 | 
            +
              context "when add_multiple is called with a single value" do
         | 
| 793 | 
            +
                before do
         | 
| 794 | 
            +
                  Cukesparse.parameters = {}
         | 
| 795 | 
            +
                end
         | 
| 796 | 
            +
             | 
| 797 | 
            +
                it "will add a key to parameters with the correct array value" do
         | 
| 798 | 
            +
                  Cukesparse.add_multiple(:tags, 'abc')
         | 
| 799 | 
            +
                  Cukesparse.parameters.should have_key(:tags)
         | 
| 800 | 
            +
                  Cukesparse.parameters[:tags].should eql ['--tags abc']
         | 
| 801 | 
            +
                end
         | 
| 802 | 
            +
              end
         | 
| 803 | 
            +
             | 
| 804 | 
            +
              context "when add_multiple is called with multiple values" do
         | 
| 805 | 
            +
                before do
         | 
| 806 | 
            +
                  Cukesparse.parameters = {}
         | 
| 807 | 
            +
                end
         | 
| 808 | 
            +
             | 
| 809 | 
            +
                it "will add a key to parameters with the correct array values" do
         | 
| 810 | 
            +
                  Cukesparse.add_multiple(:tags, ['abc', 'def', 'hij'])
         | 
| 811 | 
            +
                  Cukesparse.parameters.should have_key(:tags)
         | 
| 812 | 
            +
                  Cukesparse.parameters[:tags].should eql ['--tags abc', '--tags def', '--tags hij']
         | 
| 725 813 | 
             
                end
         | 
| 726 814 | 
             
              end
         | 
| 727 815 |  | 
| 728 816 | 
             
              # split_parameters
         | 
| 729 817 | 
             
              context "when split parameters sends :screen symbol with arguments" do
         | 
| 818 | 
            +
                before do
         | 
| 819 | 
            +
                  Cukesparse.parameters = {}
         | 
| 820 | 
            +
                end
         | 
| 821 | 
            +
             | 
| 730 822 | 
             
                it "will return set a parameters screen key and value" do
         | 
| 731 | 
            -
                  Cukesparse.split_parameters('1024 | 
| 732 | 
            -
                  Cukesparse.parameters.should have_key(: | 
| 733 | 
            -
                  Cukesparse.parameters | 
| 823 | 
            +
                  Cukesparse.split_parameters('1024/1280', :screen)
         | 
| 824 | 
            +
                  Cukesparse.parameters.should have_key(:screenwidth)
         | 
| 825 | 
            +
                  Cukesparse.parameters.should have_key(:screenheight)
         | 
| 826 | 
            +
                  Cukesparse.parameters[:screenwidth].should eql "SCREENWIDTH=1024"
         | 
| 827 | 
            +
                  Cukesparse.parameters[:screenheight].should eql "SCREENHEIGHT=1280"
         | 
| 734 828 | 
             
                end
         | 
| 735 829 | 
             
              end
         | 
| 736 830 |  | 
| 737 831 | 
             
              context "when split parameters sends :position symbol with arguments" do
         | 
| 832 | 
            +
                before do
         | 
| 833 | 
            +
                  Cukesparse.parameters = {}
         | 
| 834 | 
            +
                end
         | 
| 835 | 
            +
             | 
| 738 836 | 
             
                it "will return set a parameters screen key and value" do
         | 
| 739 | 
            -
                  Cukesparse.split_parameters('0 | 
| 740 | 
            -
                  Cukesparse.parameters.should have_key(: | 
| 741 | 
            -
                  Cukesparse.parameters | 
| 837 | 
            +
                  Cukesparse.split_parameters('0/100', :position)
         | 
| 838 | 
            +
                  Cukesparse.parameters.should have_key(:xposition)
         | 
| 839 | 
            +
                  Cukesparse.parameters.should have_key(:yposition)
         | 
| 840 | 
            +
                  Cukesparse.parameters[:xposition].should eql "XPOSITION=0"
         | 
| 841 | 
            +
                  Cukesparse.parameters[:yposition].should eql "YPOSITION=100"
         | 
| 742 842 | 
             
                end
         | 
| 743 843 | 
             
              end
         | 
| 744 844 |  | 
| @@ -781,7 +881,7 @@ describe "cukesparse" do | |
| 781 881 | 
             
                  ARGV.push('test_task', 'test_task1')
         | 
| 782 882 | 
             
                  Cukesparse.configure {|c| c.config_file = './spec/spec_files/valid_tasks.yml'}
         | 
| 783 883 | 
             
                  Cukesparse.load_config
         | 
| 784 | 
            -
                  Cukesparse.should_receive(" | 
| 884 | 
            +
                  Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: Multiple tasks have been passed!\e[0m")
         | 
| 785 885 | 
             
                  Cukesparse.check_for_task
         | 
| 786 886 | 
             
                end
         | 
| 787 887 | 
             
              end
         | 
| @@ -796,7 +896,7 @@ describe "cukesparse" do | |
| 796 896 |  | 
| 797 897 | 
             
              context "when CLI is run with no runtime_defaults defined" do
         | 
| 798 898 | 
             
                it "will return a warning if no runtime_defaults are provided" do
         | 
| 799 | 
            -
                  ARGV.push(' | 
| 899 | 
            +
                  ARGV.push('no_defaults')
         | 
| 800 900 | 
             
                  Cukesparse.configure {|c| c.config_file = './spec/spec_files/valid_tasks.yml'}
         | 
| 801 901 | 
             
                  Cukesparse.load_config
         | 
| 802 902 | 
             
                  Cukesparse.check_for_task
         | 
| @@ -805,6 +905,17 @@ describe "cukesparse" do | |
| 805 905 | 
             
                end
         | 
| 806 906 | 
             
              end
         | 
| 807 907 |  | 
| 908 | 
            +
              context "when CLI is run with no cucumber_defaults defined" do
         | 
| 909 | 
            +
                it "will return a warning if no cucumber_defaults are provided" do
         | 
| 910 | 
            +
                  ARGV.push('no_defaults')
         | 
| 911 | 
            +
                  Cukesparse.configure {|c| c.config_file = './spec/spec_files/valid_tasks.yml'}
         | 
| 912 | 
            +
                  Cukesparse.load_config
         | 
| 913 | 
            +
                  Cukesparse.check_for_task
         | 
| 914 | 
            +
                  Cukesparse.should_receive("puts").with("\e[0;33;49mWARN: The task has no cucumber defaults!\e[0m")
         | 
| 915 | 
            +
                  Cukesparse.set_cucumber_defaults
         | 
| 916 | 
            +
                end
         | 
| 917 | 
            +
              end
         | 
| 918 | 
            +
             | 
| 808 919 | 
             
              context "when CLI is run with and split paramters which sends one argument" do
         | 
| 809 920 | 
             
                it "will return a error" do
         | 
| 810 921 | 
             
                  Cukesparse.should_receive("abort").with("\e[4;31;49mERROR: You have not passed enough parameters in the test command line argument!\e[0m")
         | 
| @@ -815,7 +926,7 @@ describe "cukesparse" do | |
| 815 926 | 
             
              context "when CLI is run with and split paramters which over two argument" do
         | 
| 816 927 | 
             
                it "will return a error" do
         | 
| 817 928 | 
             
                  Cukesparse.should_receive("abort").with("\e[4;31;49mERROR: You have passed to many parameters in the test command line argument!\e[0m")
         | 
| 818 | 
            -
                  Cukesparse.split_parameters('1024 | 
| 929 | 
            +
                  Cukesparse.split_parameters('1024/1280/16', :test)
         | 
| 819 930 | 
             
                end
         | 
| 820 931 | 
             
              end
         | 
| 821 932 | 
             
            end
         | 
| @@ -1,17 +1,37 @@ | |
| 1 1 | 
             
            test_task:
         | 
| 2 2 | 
             
             feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 3 | 
            +
             cucumber_defaults:
         | 
| 4 | 
            +
              format: 'pretty'
         | 
| 5 | 
            +
              name: ['feature1', 'feature2']
         | 
| 6 | 
            +
              tags: ['tags1', 'tags2']
         | 
| 7 | 
            +
              strict: true
         | 
| 8 | 
            +
              verbose: true
         | 
| 9 | 
            +
              dry_run: true
         | 
| 10 | 
            +
              guess: true
         | 
| 11 | 
            +
              expand: true
         | 
| 3 12 | 
             
             runtime_defaults:
         | 
| 4 13 | 
             
              environment: 'release'
         | 
| 5 14 | 
             
              log_level: 'debug'
         | 
| 6 | 
            -
             | 
| 15 | 
            +
              cleanup: true
         | 
| 16 | 
            +
              database: true
         | 
| 17 | 
            +
              jenkins: true
         | 
| 18 | 
            +
              retries: 5
         | 
| 19 | 
            +
              timeout: 60
         | 
| 20 | 
            +
              screen: 1280/1024
         | 
| 21 | 
            +
              screenwidth: 1280
         | 
| 22 | 
            +
              screenheight: 1024
         | 
| 23 | 
            +
              position: 0/0
         | 
| 24 | 
            +
              xposition: 0
         | 
| 25 | 
            +
              yposition: 0
         | 
| 26 | 
            +
              highlight: true
         | 
| 27 | 
            +
             defaults: ['--format html', '--out coverage/report.html', '-P -s']
         | 
| 7 28 |  | 
| 8 29 | 
             
            test_task1:
         | 
| 9 30 | 
             
             feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 10 31 | 
             
             runtime_defaults:
         | 
| 11 32 | 
             
              environment: 'release'
         | 
| 12 33 | 
             
              log_level: 'debug'
         | 
| 13 | 
            -
             defaults: ['--format html', '--out coverage/report.html', ' | 
| 34 | 
            +
             defaults: ['--format html', '--out coverage/report.html', '-P -s']
         | 
| 14 35 |  | 
| 15 | 
            -
             | 
| 16 | 
            -
             feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
| 17 | 
            -
             defaults: ['--format html', '--out coverage/report.html', '--format pretty', '-P -s']
         | 
| 36 | 
            +
            no_defaults:
         | 
| 37 | 
            +
             feature_order: ['features/featureOne', 'features/featureTwo', 'features/featureThree']
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: cukesparse
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version:  | 
| 4 | 
            +
              version: 2.0.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Jonathan Chrisp
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2013-06- | 
| 11 | 
            +
            date: 2013-06-08 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rspec
         | 
| @@ -72,14 +72,14 @@ dependencies: | |
| 72 72 | 
             
                requirements:
         | 
| 73 73 | 
             
                - - ~>
         | 
| 74 74 | 
             
                  - !ruby/object:Gem::Version
         | 
| 75 | 
            -
                    version: 1.3. | 
| 75 | 
            +
                    version: 1.3.2
         | 
| 76 76 | 
             
              type: :runtime
         | 
| 77 77 | 
             
              prerelease: false
         | 
| 78 78 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 79 79 | 
             
                requirements:
         | 
| 80 80 | 
             
                - - ~>
         | 
| 81 81 | 
             
                  - !ruby/object:Gem::Version
         | 
| 82 | 
            -
                    version: 1.3. | 
| 82 | 
            +
                    version: 1.3.2
         | 
| 83 83 | 
             
            description: A simple command line parser to pass arguments into Cucumber
         | 
| 84 84 | 
             
            email: jonathan.chrisp@gmail.com
         | 
| 85 85 | 
             
            executables:
         | 
| @@ -95,6 +95,7 @@ files: | |
| 95 95 | 
             
            - config/tasks.yml
         | 
| 96 96 | 
             
            - cukesparse.gemspec
         | 
| 97 97 | 
             
            - lib/cukesparse.rb
         | 
| 98 | 
            +
            - report.html
         | 
| 98 99 | 
             
            - spec/cukesparse_spec.rb
         | 
| 99 100 | 
             
            - spec/spec_files/invalid_tasks.yml
         | 
| 100 101 | 
             
            - spec/spec_files/valid_tasks.yml
         | 
| @@ -108,12 +109,12 @@ require_paths: | |
| 108 109 | 
             
            - lib
         | 
| 109 110 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 110 111 | 
             
              requirements:
         | 
| 111 | 
            -
              - - '>='
         | 
| 112 | 
            +
              - - ! '>='
         | 
| 112 113 | 
             
                - !ruby/object:Gem::Version
         | 
| 113 114 | 
             
                  version: 1.9.2
         | 
| 114 115 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 115 116 | 
             
              requirements:
         | 
| 116 | 
            -
              - - '>='
         | 
| 117 | 
            +
              - - ! '>='
         | 
| 117 118 | 
             
                - !ruby/object:Gem::Version
         | 
| 118 119 | 
             
                  version: '0'
         | 
| 119 120 | 
             
            requirements: []
         |