aruba 1.0.0.pre.alpha.4 → 1.0.0.pre.alpha.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +0 -1
  3. data/.rubocop.yml +19 -1
  4. data/.rubocop_todo.yml +10 -116
  5. data/.travis.yml +24 -26
  6. data/CHANGELOG.md +112 -19
  7. data/CONTRIBUTING.md +7 -7
  8. data/Gemfile +2 -50
  9. data/Rakefile +20 -37
  10. data/appveyor.yml +3 -5
  11. data/aruba.gemspec +16 -6
  12. data/bin/console +1 -1
  13. data/cucumber.yml +4 -15
  14. data/exe/aruba +1 -1
  15. data/fixtures/cli-app/bin/aruba-test-cli +1 -1
  16. data/fixtures/cli-app/cli-app.gemspec +1 -3
  17. data/fixtures/cli-app/lib/cli/app.rb +1 -1
  18. data/fixtures/cli-app/spec/spec_helper.rb +1 -1
  19. data/fixtures/empty-app/cli-app.gemspec +1 -3
  20. data/fixtures/empty-app/lib/cli/app.rb +0 -2
  21. data/fixtures/getting-started-app/Gemfile +1 -1
  22. data/lib/aruba/api.rb +6 -6
  23. data/lib/aruba/api/commands.rb +25 -1
  24. data/lib/aruba/api/core.rb +17 -4
  25. data/lib/aruba/api/environment.rb +8 -4
  26. data/lib/aruba/api/filesystem.rb +19 -6
  27. data/lib/aruba/colorizer.rb +10 -99
  28. data/lib/aruba/config/jruby.rb +15 -5
  29. data/lib/aruba/config_wrapper.rb +3 -1
  30. data/lib/aruba/configuration.rb +24 -12
  31. data/lib/aruba/cucumber.rb +0 -2
  32. data/lib/aruba/cucumber/command.rb +123 -45
  33. data/lib/aruba/cucumber/file.rb +13 -15
  34. data/lib/aruba/cucumber/testing_frameworks.rb +74 -50
  35. data/lib/aruba/in_config_wrapper.rb +5 -1
  36. data/lib/aruba/initializer.rb +28 -28
  37. data/lib/aruba/matchers/command/be_successfully_executed.rb +4 -0
  38. data/lib/aruba/matchers/command/have_exit_status.rb +13 -3
  39. data/lib/aruba/matchers/command/have_finished_in_time.rb +1 -1
  40. data/lib/aruba/matchers/command/have_output.rb +1 -1
  41. data/lib/aruba/matchers/command/have_output_on_stderr.rb +1 -1
  42. data/lib/aruba/matchers/command/have_output_on_stdout.rb +1 -1
  43. data/lib/aruba/matchers/command/have_output_size.rb +1 -1
  44. data/lib/aruba/matchers/directory/be_an_existing_directory.rb +1 -1
  45. data/lib/aruba/matchers/file/be_an_existing_file.rb +1 -1
  46. data/lib/aruba/platform.rb +0 -7
  47. data/lib/aruba/platforms/announcer.rb +16 -11
  48. data/lib/aruba/platforms/command_monitor.rb +36 -0
  49. data/lib/aruba/platforms/simple_table.rb +2 -10
  50. data/lib/aruba/platforms/unix_environment_variables.rb +2 -10
  51. data/lib/aruba/platforms/unix_platform.rb +7 -3
  52. data/lib/aruba/platforms/windows_command_string.rb +2 -2
  53. data/lib/aruba/platforms/windows_environment_variables.rb +7 -1
  54. data/lib/aruba/platforms/windows_platform.rb +4 -0
  55. data/lib/aruba/processes/basic_process.rb +11 -11
  56. data/lib/aruba/processes/debug_process.rb +7 -3
  57. data/lib/aruba/processes/spawn_process.rb +13 -8
  58. data/lib/aruba/rspec.rb +1 -1
  59. data/lib/aruba/setup.rb +5 -5
  60. data/lib/aruba/version.rb +1 -1
  61. metadata +153 -20
  62. data/bin/build +0 -3
  63. data/bin/release +0 -3
@@ -22,6 +22,10 @@ module Aruba
22
22
  def method_missing(*)
23
23
  fail NoCommandHasBeenStoppedError, 'No last command stopped available'
24
24
  end
25
+
26
+ def respond_to_missing?(*)
27
+ true
28
+ end
25
29
  end
26
30
 
27
31
  class DefaultLastCommandStarted
@@ -32,6 +36,10 @@ module Aruba
32
36
  def method_missing(*)
33
37
  fail NoCommandHasBeenStartedError, 'No last command started available'
34
38
  end
39
+
40
+ def respond_to_missing?(*)
41
+ true
42
+ end
35
43
  end
36
44
 
37
45
  def initialize(opts = {})
@@ -83,6 +91,34 @@ module Aruba
83
91
  self
84
92
  end
85
93
 
94
+ # Get stdout of all commands
95
+ #
96
+ # @return [String]
97
+ # The stdout of all command which have run before
98
+ def all_stdout
99
+ registered_commands.each(&:stop)
100
+
101
+ registered_commands.each_with_object('') { |e, a| a << e.stdout }
102
+ end
103
+
104
+ # Get stderr of all commands
105
+ #
106
+ # @return [String]
107
+ # The stderr of all command which have run before
108
+ def all_stderr
109
+ registered_commands.each(&:stop)
110
+
111
+ registered_commands.each_with_object('') { |e, a| a << e.stderr }
112
+ end
113
+
114
+ # Get stderr and stdout of all commands
115
+ #
116
+ # @return [String]
117
+ # The stderr and stdout of all command which have run before
118
+ def all_output
119
+ all_stdout << all_stderr
120
+ end
121
+
86
122
  # Register command to monitor
87
123
  def register_command(cmd)
88
124
  registered_commands << cmd
@@ -31,16 +31,8 @@ module Aruba
31
31
 
32
32
  name_size = longest_key.length
33
33
 
34
- if RUBY_VERSION < '2'
35
- rows = []
36
-
37
- hash.each do |k, v|
38
- rows << format("# %-#{name_size}s => %s", k, v)
39
- end
40
- else
41
- rows = hash.each_with_object([]) do |(k, v), a|
42
- a << format("# %-#{name_size}s => %s", k, v)
43
- end
34
+ rows = hash.each_with_object([]) do |(k, v), a|
35
+ a << format("# %-#{name_size}s => %s", k, v)
44
36
  end
45
37
 
46
38
  if opts[:sort] == true
@@ -9,11 +9,7 @@ module Aruba
9
9
  attr_reader :other_env, :block
10
10
 
11
11
  def initialize(other_env, &block)
12
- @other_env = other_env
13
-
14
- to_hash = RUBY_VERSION >= '2' ? :to_h : :to_hash
15
-
16
- @other_env = @other_env.public_send(to_hash).each_with_object({}) { |(k, v), a| a[k] = v.to_s }
12
+ @other_env = other_env.to_h.each_with_object({}) { |(k, v), a| a[k] = v.to_s }
17
13
 
18
14
  @block = if block_given?
19
15
  block
@@ -56,11 +52,7 @@ module Aruba
56
52
  def initialize(env = ENV)
57
53
  @actions = []
58
54
 
59
- @env = if RUBY_VERSION < '2.0'
60
- env.to_hash
61
- else
62
- env.to_h
63
- end
55
+ @env = env.to_h
64
56
  end
65
57
 
66
58
  # Update environment with other en
@@ -113,7 +113,7 @@ module Aruba
113
113
  def rm(paths, options = {})
114
114
  paths = Array(paths).map { |p| ::File.expand_path(p) }
115
115
 
116
- FileUtils.rm_r(paths, options)
116
+ FileUtils.rm_r(paths, **options)
117
117
  end
118
118
 
119
119
  # Get current working directory
@@ -132,7 +132,7 @@ module Aruba
132
132
 
133
133
  # Touch file, directory
134
134
  def touch(args, options)
135
- FileUtils.touch(args, options)
135
+ FileUtils.touch(args, **options)
136
136
  end
137
137
 
138
138
  # Copy file/directory
@@ -147,7 +147,7 @@ module Aruba
147
147
 
148
148
  # Change mode of file/directory
149
149
  def chmod(mode, args, options)
150
- FileUtils.chmod_R(mode, args, options)
150
+ FileUtils.chmod_R(mode, args, **options)
151
151
  end
152
152
 
153
153
  # Exists and is file
@@ -236,6 +236,10 @@ module Aruba
236
236
  def which(program, path = ENV['PATH'])
237
237
  UnixWhich.new.call(program, path)
238
238
  end
239
+
240
+ def builtin_shell_commands
241
+ []
242
+ end
239
243
  end
240
244
  end
241
245
  end
@@ -21,8 +21,8 @@ module Aruba
21
21
  private
22
22
 
23
23
  def escaped_arguments
24
- @arguments.map { |arg| arg.gsub(/"/, '"""') }.
25
- map { |arg| arg =~ / / ? "\"#{arg}\"" : arg }
24
+ @arguments.map { |arg| arg.gsub(/"/, '"""') }
25
+ .map { |arg| arg =~ / / ? "\"#{arg}\"" : arg }
26
26
  end
27
27
 
28
28
  def escaped_command
@@ -22,7 +22,13 @@ module Aruba
22
22
  #
23
23
  # @example But if you copy the ENV to a hash, Ruby treats the keys as case sensitive:
24
24
  # env_copy = ENV.to_hash
25
- # # => {"ALLUSERSPROFILE"=>"C:\\ProgramData", "ANSICON"=>"119x1000 (119x58)", "ANSICON_DEF"=>"7", APPDATA"=>"C:\\Users\\blorf\\AppData\\Roaming", ....}
25
+ # # => {
26
+ # "ALLUSERSPROFILE"=>
27
+ # "C:\\ProgramData",
28
+ # "ANSICON"=>"119x1000 (119x58)",
29
+ # "ANSICON_DEF"=>"7",
30
+ # APPDATA" => "C:\\Users\\blorf\\AppData\\Roaming", ....
31
+ # }
26
32
  # env["Path"]
27
33
  # # => ".;.\bin;c:\rubys\ruby-2.1.6-p336\bin;"
28
34
  # env["PATH"]
@@ -37,6 +37,10 @@ module Aruba
37
37
  def which(program, path = ENV['PATH'])
38
38
  WindowsWhich.new.call(program, path)
39
39
  end
40
+
41
+ def builtin_shell_commands
42
+ ['cd', 'dir', 'echo', 'exit', 'set', 'type']
43
+ end
40
44
  end
41
45
  end
42
46
  end
@@ -12,7 +12,7 @@ module Aruba
12
12
  # @private
13
13
  class BasicProcess
14
14
  attr_reader :exit_status, :environment, :working_directory, :main_class,
15
- :io_wait_timeout, :exit_timeout, :startup_wait_time, :stop_signal
15
+ :io_wait_timeout, :exit_timeout, :startup_wait_time, :stop_signal
16
16
 
17
17
  def initialize(cmd, exit_timeout, io_wait_timeout, working_directory,
18
18
  environment = Aruba.platform.environment_variables.hash_from_env,
@@ -39,7 +39,7 @@ module Aruba
39
39
 
40
40
  # Output pid of process
41
41
  def pid
42
- 'No implemented'
42
+ raise NotImplementedError
43
43
  end
44
44
 
45
45
  # Output stderr and stdout
@@ -48,39 +48,39 @@ module Aruba
48
48
  end
49
49
 
50
50
  def write(*)
51
- NotImplementedError
51
+ raise NotImplementedError
52
52
  end
53
53
 
54
54
  def stdin(*)
55
- NotImplementedError
55
+ raise NotImplementedError
56
56
  end
57
57
 
58
58
  def stdout(*)
59
- NotImplementedError
59
+ raise NotImplementedError
60
60
  end
61
61
 
62
62
  def stderr(*)
63
- NotImplementedError
63
+ raise NotImplementedError
64
64
  end
65
65
 
66
66
  def close_io(*)
67
- NotImplementedError
67
+ raise NotImplementedError
68
68
  end
69
69
 
70
70
  def send_signal(*)
71
- NotImplementedError
71
+ raise NotImplementedError
72
72
  end
73
73
 
74
74
  def filesystem_status
75
- NotImplementedError
75
+ raise NotImplementedError
76
76
  end
77
77
 
78
78
  def content
79
- NotImplementedError
79
+ raise NotImplementedError
80
80
  end
81
81
 
82
82
  def wait
83
- NotImplementedError
83
+ raise NotImplementedError
84
84
  end
85
85
 
86
86
  # Restart a command
@@ -4,10 +4,14 @@ require 'aruba/processes/spawn_process'
4
4
  module Aruba
5
5
  # Processes
6
6
  module Processes
7
- # Run your command in `systemd()` to make debugging it easier
7
+ # Run your command in `system()` to make debugging it easier. This will
8
+ # make the process use the default input and output streams so the
9
+ # developer can interact with it directly. This means that part of Aruba's
10
+ # functionality is disabled. I.e., checks for output, and passing input
11
+ # programmatically will not work.
8
12
  #
9
- # `DebugProcess` is not meant for direct use - `InProcess.new` - by
10
- # users. Only it's public methods are part of the public API of aruba, e.g.
13
+ # `DebugProcess` is not meant for direct use - `DebugProcess.new` - by
14
+ # users. Only its public methods are part of the public API of aruba, e.g.
11
15
  # `#stdin`, `#stdout`.
12
16
  #
13
17
  # @private
@@ -66,7 +66,10 @@ module Aruba
66
66
  # rubocop:disable Metrics/MethodLength
67
67
  def start
68
68
  # rubocop:disable Metrics/LineLength
69
- fail CommandAlreadyStartedError, %(Command "#{commandline}" has already been started. Please `#stop` the command first and `#start` it again. Alternatively use `#restart`.\n#{caller.join("\n")}) if started?
69
+ if started?
70
+ error_message = %(Command "#{commandline}" has already been started. Please `#stop` the command first and `#start` it again. Alternatively use `#restart`.\n#{caller.join("\n")})
71
+ fail CommandAlreadyStartedError, error_message
72
+ end
70
73
 
71
74
  # rubocop:enable Metrics/LineLength
72
75
 
@@ -79,8 +82,10 @@ module Aruba
79
82
  @stdout_file.sync = true
80
83
  @stderr_file.sync = true
81
84
 
82
- @stdout_file.binmode
83
- @stderr_file.binmode
85
+ if RUBY_VERSION >= '1.9'
86
+ @stdout_file.set_encoding('ASCII-8BIT')
87
+ @stderr_file.set_encoding('ASCII-8BIT')
88
+ end
84
89
 
85
90
  @exit_status = nil
86
91
  @duplex = true
@@ -204,7 +209,7 @@ module Aruba
204
209
  end
205
210
 
206
211
  @exit_status = @process.exit_code
207
-
212
+
208
213
  @stdout_cache = read_temporary_output_file @stdout_file
209
214
  @stderr_cache = read_temporary_output_file @stderr_file
210
215
 
@@ -228,11 +233,12 @@ module Aruba
228
233
  # @param [String] signal
229
234
  # The signal, i.e. 'TERM'
230
235
  def send_signal(signal)
231
- fail CommandAlreadyStoppedError, %(Command "#{commandline}" with PID "#{pid}" has already stopped.) if @process.exited?
236
+ error_message = %(Command "#{commandline}" with PID "#{pid}" has already stopped.)
237
+ fail CommandAlreadyStoppedError, error_message if @process.exited?
232
238
 
233
239
  Process.kill signal, pid
234
240
  rescue Errno::ESRCH
235
- raise CommandAlreadyStoppedError, %(Command "#{commandline}" with PID "#{pid}" has already stopped.)
241
+ raise CommandAlreadyStoppedError, error_message
236
242
  end
237
243
 
238
244
  # Return file system stats for the given command
@@ -260,12 +266,11 @@ module Aruba
260
266
 
261
267
  def command_string
262
268
  fail LaunchError, %(Command "#{command}" not found in PATH-variable "#{environment['PATH']}".) if command_path.nil?
263
-
264
269
  Aruba.platform.command_string.new(command_path, *arguments)
265
270
  end
266
271
 
267
272
  def command_path
268
- @command_path ||= Aruba.platform.which(command, environment['PATH'])
273
+ @command_path ||= (Aruba.platform.builtin_shell_commands.include?(command) ? command : Aruba.platform.which(command, environment['PATH']))
269
274
  end
270
275
 
271
276
  def wait_for_io(time_to_wait)
@@ -14,7 +14,7 @@ RSpec.configure do |config|
14
14
 
15
15
  # Modify PATH to include project/bin
16
16
  prepend_environment_variable 'PATH',
17
- aruba.config.command_search_paths.join(File::PATH_SEPARATOR) + File::PATH_SEPARATOR
17
+ aruba.config.command_search_paths.join(File::PATH_SEPARATOR) + File::PATH_SEPARATOR
18
18
 
19
19
  # Use configured home directory as HOME
20
20
  set_environment_variable 'HOME', aruba.config.home_directory
@@ -36,11 +36,11 @@ module Aruba
36
36
  runtime.event_bus.register(
37
37
  :command_started,
38
38
  proc do |event|
39
- runtime.announcer.announce :command, event.entity.commandline
40
- runtime.announcer.announce :timeout, 'exit', event.entity.exit_timeout
41
- runtime.announcer.announce :timeout, 'io wait', event.entity.io_wait_timeout
42
- runtime.announcer.announce :wait_time, 'startup wait time', event.entity.startup_wait_time
43
- runtime.announcer.announce :full_environment, event.entity.environment
39
+ runtime.announcer.announce(:command) { event.entity.commandline }
40
+ runtime.announcer.announce(:timeout, 'exit') { event.entity.exit_timeout }
41
+ runtime.announcer.announce(:timeout, 'io wait') { event.entity.io_wait_timeout }
42
+ runtime.announcer.announce(:wait_time, 'startup wait time') { event.entity.startup_wait_time }
43
+ runtime.announcer.announce(:full_environment) { event.entity.environment }
44
44
  end
45
45
  )
46
46
 
@@ -1,3 +1,3 @@
1
1
  module Aruba
2
- VERSION = '1.0.0.pre.alpha.4'.freeze
2
+ VERSION = '1.0.0.pre.alpha.5'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aruba
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.alpha.4
4
+ version: 1.0.0.pre.alpha.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aslak Hellesøy, Matt Wynne and other Aruba Contributors
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-05-22 00:00:00.000000000 Z
11
+ date: 2019-12-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: childprocess
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.0'
19
+ version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.0'
26
+ version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: contracts
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -101,27 +101,162 @@ dependencies:
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0.19'
103
103
  - !ruby/object:Gem::Dependency
104
- name: bundler
104
+ name: json
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - ">="
107
+ - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: 1.7.0
110
- - - "<"
109
+ version: '2.1'
110
+ type: :development
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
111
115
  - !ruby/object:Gem::Version
112
- version: '3.0'
116
+ version: '2.1'
117
+ - !ruby/object:Gem::Dependency
118
+ name: license_finder
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '5.3'
113
124
  type: :development
114
125
  prerelease: false
115
126
  version_requirements: !ruby/object:Gem::Requirement
116
127
  requirements:
117
- - - ">="
128
+ - - "~>"
118
129
  - !ruby/object:Gem::Version
119
- version: 1.7.0
120
- - - "<"
130
+ version: '5.3'
131
+ - !ruby/object:Gem::Dependency
132
+ name: minitest
133
+ requirement: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
121
136
  - !ruby/object:Gem::Version
122
- version: '3.0'
123
- description: Extension for popular TDD and BDD frameworks like "Cucumber", "RSpec"
124
- and "Minitest" to make testing commandline applications meaningful, easy and fun.
137
+ version: '5.10'
138
+ type: :development
139
+ prerelease: false
140
+ version_requirements: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '5.10'
145
+ - !ruby/object:Gem::Dependency
146
+ name: pry-doc
147
+ requirement: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: 1.0.0
152
+ type: :development
153
+ prerelease: false
154
+ version_requirements: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: 1.0.0
159
+ - !ruby/object:Gem::Dependency
160
+ name: rake
161
+ requirement: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - "~>"
164
+ - !ruby/object:Gem::Version
165
+ version: '12.3'
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ requirements:
170
+ - - "~>"
171
+ - !ruby/object:Gem::Version
172
+ version: '12.3'
173
+ - !ruby/object:Gem::Dependency
174
+ name: rspec
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: '3.6'
180
+ type: :development
181
+ prerelease: false
182
+ version_requirements: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
185
+ - !ruby/object:Gem::Version
186
+ version: '3.6'
187
+ - !ruby/object:Gem::Dependency
188
+ name: rubocop
189
+ requirement: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: 0.69.0
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: !ruby/object:Gem::Requirement
197
+ requirements:
198
+ - - "~>"
199
+ - !ruby/object:Gem::Version
200
+ version: 0.69.0
201
+ - !ruby/object:Gem::Dependency
202
+ name: rubocop-performance
203
+ requirement: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - "~>"
206
+ - !ruby/object:Gem::Version
207
+ version: '1.1'
208
+ type: :development
209
+ prerelease: false
210
+ version_requirements: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - "~>"
213
+ - !ruby/object:Gem::Version
214
+ version: '1.1'
215
+ - !ruby/object:Gem::Dependency
216
+ name: simplecov
217
+ requirement: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - "~>"
220
+ - !ruby/object:Gem::Version
221
+ version: '0.15'
222
+ type: :development
223
+ prerelease: false
224
+ version_requirements: !ruby/object:Gem::Requirement
225
+ requirements:
226
+ - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: '0.15'
229
+ - !ruby/object:Gem::Dependency
230
+ name: travis-yaml
231
+ requirement: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - "~>"
234
+ - !ruby/object:Gem::Version
235
+ version: '0.2'
236
+ type: :development
237
+ prerelease: false
238
+ version_requirements: !ruby/object:Gem::Requirement
239
+ requirements:
240
+ - - "~>"
241
+ - !ruby/object:Gem::Version
242
+ version: '0.2'
243
+ - !ruby/object:Gem::Dependency
244
+ name: yard-junk
245
+ requirement: !ruby/object:Gem::Requirement
246
+ requirements:
247
+ - - "~>"
248
+ - !ruby/object:Gem::Version
249
+ version: 0.0.7
250
+ type: :development
251
+ prerelease: false
252
+ version_requirements: !ruby/object:Gem::Requirement
253
+ requirements:
254
+ - - "~>"
255
+ - !ruby/object:Gem::Version
256
+ version: 0.0.7
257
+ description: |-
258
+ Extension for popular TDD and BDD frameworks like "Cucumber", "RSpec" and "Minitest",
259
+ to make testing commandline applications meaningful, easy and fun.
125
260
  email: cukes@googlegroups.com
126
261
  executables:
127
262
  - aruba
@@ -149,9 +284,7 @@ files:
149
284
  - TODO.md
150
285
  - appveyor.yml
151
286
  - aruba.gemspec
152
- - bin/build
153
287
  - bin/console
154
- - bin/release
155
288
  - bin/test
156
289
  - config/.gitignore
157
290
  - cucumber.yml
@@ -299,15 +432,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
299
432
  requirements:
300
433
  - - ">="
301
434
  - !ruby/object:Gem::Version
302
- version: '2.2'
435
+ version: '2.3'
303
436
  required_rubygems_version: !ruby/object:Gem::Requirement
304
437
  requirements:
305
438
  - - ">"
306
439
  - !ruby/object:Gem::Version
307
440
  version: 1.3.1
308
441
  requirements: []
309
- rubygems_version: 3.0.3
442
+ rubygems_version: 3.0.6
310
443
  signing_key:
311
444
  specification_version: 4
312
- summary: aruba-1.0.0.pre.alpha.4
445
+ summary: aruba-1.0.0.pre.alpha.5
313
446
  test_files: []