aruba 1.0.0.pre.alpha.2 → 1.0.0.pre.alpha.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (113) hide show
  1. checksums.yaml +5 -5
  2. data/.github/PULL_REQUEST_TEMPLATE.md +2 -1
  3. data/.rubocop.yml +6 -181
  4. data/.rubocop_todo.yml +364 -0
  5. data/.travis.yml +63 -34
  6. data/.yardopts +3 -0
  7. data/CHANGELOG.md +1121 -0
  8. data/CONTRIBUTING.md +179 -78
  9. data/Gemfile +29 -44
  10. data/README.md +41 -11
  11. data/Rakefile +35 -35
  12. data/appveyor.yml +6 -5
  13. data/aruba.gemspec +14 -16
  14. data/bin/console +2 -11
  15. data/cucumber.yml +0 -7
  16. data/fixtures/cli-app/README.md +1 -1
  17. data/fixtures/cli-app/Rakefile +1 -1
  18. data/fixtures/cli-app/cli-app.gemspec +1 -0
  19. data/fixtures/cli-app/lib/cli/app/suppress_simple_cov_output.rb +3 -3
  20. data/fixtures/cli-app/lib/cli/app/version.rb +1 -1
  21. data/fixtures/empty-app/Rakefile +1 -1
  22. data/fixtures/empty-app/cli-app.gemspec +1 -0
  23. data/fixtures/empty-app/lib/cli/app/version.rb +1 -1
  24. data/fixtures/getting-started-app/Gemfile +1 -1
  25. data/lib/aruba/api.rb +3 -10
  26. data/lib/aruba/api/bundler.rb +16 -0
  27. data/lib/aruba/api/commands.rb +249 -0
  28. data/lib/aruba/api/core.rb +24 -10
  29. data/lib/aruba/api/environment.rb +12 -7
  30. data/lib/aruba/api/filesystem.rb +22 -20
  31. data/lib/aruba/api/text.rb +3 -9
  32. data/lib/aruba/aruba_path.rb +3 -18
  33. data/lib/aruba/basic_configuration.rb +3 -19
  34. data/lib/aruba/cli.rb +1 -1
  35. data/lib/aruba/colorizer.rb +33 -33
  36. data/lib/aruba/command.rb +4 -0
  37. data/lib/aruba/config_wrapper.rb +1 -1
  38. data/lib/aruba/configuration.rb +78 -0
  39. data/lib/aruba/console.rb +5 -5
  40. data/lib/aruba/console/help.rb +1 -1
  41. data/lib/aruba/cucumber.rb +0 -1
  42. data/lib/aruba/cucumber/command.rb +55 -115
  43. data/lib/aruba/cucumber/environment.rb +1 -1
  44. data/lib/aruba/cucumber/file.rb +9 -21
  45. data/lib/aruba/cucumber/hooks.rb +6 -62
  46. data/lib/aruba/event_bus/name_resolver.rb +1 -2
  47. data/lib/aruba/hooks.rb +1 -1
  48. data/lib/aruba/initializer.rb +3 -3
  49. data/lib/aruba/matchers/base/base_matcher.rb +2 -2
  50. data/lib/aruba/matchers/base/message_indenter.rb +19 -0
  51. data/lib/aruba/matchers/base/object_formatter.rb +2 -2
  52. data/lib/aruba/matchers/collection/include_an_object.rb +7 -9
  53. data/lib/aruba/matchers/command/be_successfully_executed.rb +2 -4
  54. data/lib/aruba/matchers/command/have_exit_status.rb +1 -1
  55. data/lib/aruba/matchers/command/have_finished_in_time.rb +2 -4
  56. data/lib/aruba/matchers/command/have_output.rb +9 -4
  57. data/lib/aruba/matchers/command/have_output_on_stderr.rb +1 -1
  58. data/lib/aruba/matchers/command/have_output_on_stdout.rb +1 -1
  59. data/lib/aruba/matchers/command/have_output_size.rb +1 -1
  60. data/lib/aruba/matchers/directory/be_an_existing_directory.rb +4 -6
  61. data/lib/aruba/matchers/directory/have_sub_directory.rb +4 -6
  62. data/lib/aruba/matchers/file/be_a_command_found_in_path.rb +2 -4
  63. data/lib/aruba/matchers/file/be_an_existing_executable.rb +4 -6
  64. data/lib/aruba/matchers/file/be_an_existing_file.rb +4 -6
  65. data/lib/aruba/matchers/file/have_file_content.rb +4 -4
  66. data/lib/aruba/matchers/file/have_file_size.rb +6 -8
  67. data/lib/aruba/matchers/file/have_same_file_content.rb +9 -12
  68. data/lib/aruba/matchers/path/a_path_matching_pattern.rb +2 -4
  69. data/lib/aruba/matchers/path/be_an_absolute_path.rb +3 -5
  70. data/lib/aruba/matchers/path/be_an_existing_path.rb +4 -6
  71. data/lib/aruba/matchers/path/have_permissions.rb +6 -8
  72. data/lib/aruba/matchers/string/include_output_string.rb +8 -10
  73. data/lib/aruba/matchers/string/match_output_string.rb +9 -11
  74. data/lib/aruba/matchers/string/output_string_eq.rb +7 -9
  75. data/lib/aruba/platform.rb +0 -1
  76. data/lib/aruba/platforms/announcer.rb +26 -70
  77. data/lib/aruba/platforms/aruba_file_creator.rb +1 -1
  78. data/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +2 -2
  79. data/lib/aruba/platforms/aruba_logger.rb +22 -2
  80. data/lib/aruba/platforms/command_monitor.rb +2 -125
  81. data/lib/aruba/platforms/filesystem_status.rb +9 -9
  82. data/lib/aruba/platforms/local_environment.rb +2 -2
  83. data/lib/aruba/platforms/simple_table.rb +3 -3
  84. data/lib/aruba/platforms/unix_command_string.rb +7 -4
  85. data/lib/aruba/platforms/unix_environment_variables.rb +9 -13
  86. data/lib/aruba/platforms/unix_platform.rb +2 -27
  87. data/lib/aruba/platforms/unix_which.rb +2 -1
  88. data/lib/aruba/platforms/windows_command_string.rb +20 -7
  89. data/lib/aruba/platforms/windows_environment_variables.rb +35 -30
  90. data/lib/aruba/platforms/windows_which.rb +4 -3
  91. data/lib/aruba/processes/basic_process.rb +11 -15
  92. data/lib/aruba/processes/debug_process.rb +5 -0
  93. data/lib/aruba/processes/in_process.rb +17 -8
  94. data/lib/aruba/processes/spawn_process.rb +35 -23
  95. data/lib/aruba/rspec.rb +9 -22
  96. data/lib/aruba/runtime.rb +7 -5
  97. data/lib/aruba/setup.rb +6 -4
  98. data/lib/aruba/tasks/docker_helpers.rb +1 -1
  99. data/lib/aruba/version.rb +1 -1
  100. metadata +37 -57
  101. data/History.md +0 -612
  102. data/bin/bootstrap +0 -34
  103. data/fixtures/spawn_process/stderr.sh +0 -3
  104. data/lib/aruba/api/command.rb +0 -309
  105. data/lib/aruba/api/deprecated.rb +0 -895
  106. data/lib/aruba/api/rvm.rb +0 -44
  107. data/lib/aruba/config.rb +0 -101
  108. data/lib/aruba/cucumber/rvm.rb +0 -3
  109. data/lib/aruba/in_process.rb +0 -14
  110. data/lib/aruba/jruby.rb +0 -4
  111. data/lib/aruba/matchers/path/match_path_pattern.rb +0 -41
  112. data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +0 -25
  113. data/lib/aruba/spawn_process.rb +0 -11
@@ -10,10 +10,10 @@ module Aruba
10
10
  @runtime = runtime
11
11
  end
12
12
 
13
- def call
13
+ def call(clobber = true)
14
14
  return if runtime.setup_already_done?
15
15
 
16
- working_directory
16
+ working_directory(clobber)
17
17
  events
18
18
 
19
19
  runtime.setup_done
@@ -23,8 +23,10 @@ module Aruba
23
23
 
24
24
  private
25
25
 
26
- def working_directory
27
- Aruba.platform.rm File.join(runtime.config.root_directory, runtime.config.working_directory), :force => true
26
+ def working_directory(clobber = true)
27
+ if clobber
28
+ Aruba.platform.rm File.join(runtime.config.root_directory, runtime.config.working_directory), force: true
29
+ end
28
30
  Aruba.platform.mkdir File.join(runtime.config.root_directory, runtime.config.working_directory)
29
31
  Aruba.platform.chdir runtime.config.root_directory
30
32
  end
@@ -13,7 +13,7 @@ module Aruba
13
13
  @instance = instance
14
14
  end
15
15
 
16
- def method_missing(m, *args, &block)
16
+ def method_missing(m, *_args)
17
17
  @file.public_send m, instance
18
18
  end
19
19
 
@@ -1,3 +1,3 @@
1
1
  module Aruba
2
- VERSION = '1.0.0-alpha.2'.freeze
2
+ VERSION = '1.0.0.pre.alpha.3'.freeze
3
3
  end
metadata CHANGED
@@ -1,103 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aruba
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.pre.alpha.2
4
+ version: 1.0.0.pre.alpha.3
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: 2017-07-13 00:00:00.000000000 Z
11
+ date: 2019-05-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: cucumber
14
+ name: childprocess
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '2.4'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 2.4.0
19
+ version: '1.0'
23
20
  type: :runtime
24
21
  prerelease: false
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '2.4'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 2.4.0
26
+ version: '1.0'
33
27
  - !ruby/object:Gem::Dependency
34
- name: childprocess
28
+ name: contracts
35
29
  requirement: !ruby/object:Gem::Requirement
36
30
  requirements:
37
31
  - - "~>"
38
32
  - !ruby/object:Gem::Version
39
- version: 0.7.1
33
+ version: '0.13'
40
34
  type: :runtime
41
35
  prerelease: false
42
36
  version_requirements: !ruby/object:Gem::Requirement
43
37
  requirements:
44
38
  - - "~>"
45
39
  - !ruby/object:Gem::Version
46
- version: 0.7.1
40
+ version: '0.13'
47
41
  - !ruby/object:Gem::Dependency
48
- name: ffi
42
+ name: cucumber
49
43
  requirement: !ruby/object:Gem::Requirement
50
44
  requirements:
51
45
  - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '1.9'
54
- - - ">="
55
- - !ruby/object:Gem::Version
56
- version: 1.9.10
47
+ version: '2.4'
57
48
  type: :runtime
58
49
  prerelease: false
59
50
  version_requirements: !ruby/object:Gem::Requirement
60
51
  requirements:
61
52
  - - "~>"
62
53
  - !ruby/object:Gem::Version
63
- version: '1.9'
64
- - - ">="
65
- - !ruby/object:Gem::Version
66
- version: 1.9.10
54
+ version: '2.4'
67
55
  - !ruby/object:Gem::Dependency
68
- name: rspec-expectations
56
+ name: ffi
69
57
  requirement: !ruby/object:Gem::Requirement
70
58
  requirements:
71
59
  - - "~>"
72
60
  - !ruby/object:Gem::Version
73
- version: '3.4'
74
- - - ">="
75
- - !ruby/object:Gem::Version
76
- version: 3.4.0
61
+ version: '1.9'
77
62
  type: :runtime
78
63
  prerelease: false
79
64
  version_requirements: !ruby/object:Gem::Requirement
80
65
  requirements:
81
66
  - - "~>"
82
67
  - !ruby/object:Gem::Version
83
- version: '3.4'
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: 3.4.0
68
+ version: '1.9'
87
69
  - !ruby/object:Gem::Dependency
88
- name: contracts
70
+ name: rspec-expectations
89
71
  requirement: !ruby/object:Gem::Requirement
90
72
  requirements:
91
73
  - - "~>"
92
74
  - !ruby/object:Gem::Version
93
- version: '0.14'
75
+ version: '3.4'
94
76
  type: :runtime
95
77
  prerelease: false
96
78
  version_requirements: !ruby/object:Gem::Requirement
97
79
  requirements:
98
80
  - - "~>"
99
81
  - !ruby/object:Gem::Version
100
- version: '0.14'
82
+ version: '3.4'
101
83
  - !ruby/object:Gem::Dependency
102
84
  name: thor
103
85
  requirement: !ruby/object:Gem::Requirement
@@ -116,16 +98,22 @@ dependencies:
116
98
  name: bundler
117
99
  requirement: !ruby/object:Gem::Requirement
118
100
  requirements:
119
- - - "~>"
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 1.7.0
104
+ - - "<"
120
105
  - !ruby/object:Gem::Version
121
- version: '1.11'
106
+ version: '3.0'
122
107
  type: :development
123
108
  prerelease: false
124
109
  version_requirements: !ruby/object:Gem::Requirement
125
110
  requirements:
126
- - - "~>"
111
+ - - ">="
112
+ - !ruby/object:Gem::Version
113
+ version: 1.7.0
114
+ - - "<"
127
115
  - !ruby/object:Gem::Version
128
- version: '1.11'
116
+ version: '3.0'
129
117
  description: Extension for popular TDD and BDD frameworks like "Cucumber", "RSpec"
130
118
  and "Minitest" to make testing commandline applications meaningful, easy and fun.
131
119
  email: cukes@googlegroups.com
@@ -141,20 +129,20 @@ files:
141
129
  - ".gitignore"
142
130
  - ".rspec"
143
131
  - ".rubocop.yml"
132
+ - ".rubocop_todo.yml"
144
133
  - ".simplecov"
145
134
  - ".travis.yml"
146
135
  - ".yardopts"
136
+ - CHANGELOG.md
147
137
  - CONTRIBUTING.md
148
138
  - Dockerfile
149
139
  - Gemfile
150
- - History.md
151
140
  - LICENSE
152
141
  - README.md
153
142
  - Rakefile
154
143
  - TODO.md
155
144
  - appveyor.yml
156
145
  - aruba.gemspec
157
- - bin/bootstrap
158
146
  - bin/build
159
147
  - bin/console
160
148
  - bin/release
@@ -190,15 +178,13 @@ files:
190
178
  - fixtures/getting-started-app/Gemfile
191
179
  - fixtures/getting-started-app/README.md
192
180
  - fixtures/getting-started-app/features/support/env.rb
193
- - fixtures/spawn_process/stderr.sh
194
181
  - lib/aruba.rb
195
182
  - lib/aruba/api.rb
196
- - lib/aruba/api/command.rb
183
+ - lib/aruba/api/bundler.rb
184
+ - lib/aruba/api/commands.rb
197
185
  - lib/aruba/api/core.rb
198
- - lib/aruba/api/deprecated.rb
199
186
  - lib/aruba/api/environment.rb
200
187
  - lib/aruba/api/filesystem.rb
201
- - lib/aruba/api/rvm.rb
202
188
  - lib/aruba/api/text.rb
203
189
  - lib/aruba/aruba_path.rb
204
190
  - lib/aruba/basic_configuration.rb
@@ -206,9 +192,9 @@ files:
206
192
  - lib/aruba/cli.rb
207
193
  - lib/aruba/colorizer.rb
208
194
  - lib/aruba/command.rb
209
- - lib/aruba/config.rb
210
195
  - lib/aruba/config/jruby.rb
211
196
  - lib/aruba/config_wrapper.rb
197
+ - lib/aruba/configuration.rb
212
198
  - lib/aruba/console.rb
213
199
  - lib/aruba/console/help.rb
214
200
  - lib/aruba/contracts/absolute_path.rb
@@ -220,7 +206,6 @@ files:
220
206
  - lib/aruba/cucumber/environment.rb
221
207
  - lib/aruba/cucumber/file.rb
222
208
  - lib/aruba/cucumber/hooks.rb
223
- - lib/aruba/cucumber/rvm.rb
224
209
  - lib/aruba/cucumber/testing_frameworks.rb
225
210
  - lib/aruba/errors.rb
226
211
  - lib/aruba/event_bus.rb
@@ -231,10 +216,9 @@ files:
231
216
  - lib/aruba/generators/script_file.rb
232
217
  - lib/aruba/hooks.rb
233
218
  - lib/aruba/in_config_wrapper.rb
234
- - lib/aruba/in_process.rb
235
219
  - lib/aruba/initializer.rb
236
- - lib/aruba/jruby.rb
237
220
  - lib/aruba/matchers/base/base_matcher.rb
221
+ - lib/aruba/matchers/base/message_indenter.rb
238
222
  - lib/aruba/matchers/base/object_formatter.rb
239
223
  - lib/aruba/matchers/collection.rb
240
224
  - lib/aruba/matchers/collection/all.rb
@@ -263,8 +247,6 @@ files:
263
247
  - lib/aruba/matchers/path/be_an_absolute_path.rb
264
248
  - lib/aruba/matchers/path/be_an_existing_path.rb
265
249
  - lib/aruba/matchers/path/have_permissions.rb
266
- - lib/aruba/matchers/path/match_path_pattern.rb
267
- - lib/aruba/matchers/rspec_matcher_include_regexp.rb
268
250
  - lib/aruba/matchers/string.rb
269
251
  - lib/aruba/matchers/string/include_output_string.rb
270
252
  - lib/aruba/matchers/string/match_output_string.rb
@@ -296,10 +278,9 @@ files:
296
278
  - lib/aruba/rspec.rb
297
279
  - lib/aruba/runtime.rb
298
280
  - lib/aruba/setup.rb
299
- - lib/aruba/spawn_process.rb
300
281
  - lib/aruba/tasks/docker_helpers.rb
301
282
  - lib/aruba/version.rb
302
- homepage: http://github.com/cucumber/aruba
283
+ homepage: https://github.com/cucumber/aruba
303
284
  licenses:
304
285
  - MIT
305
286
  metadata: {}
@@ -312,16 +293,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
312
293
  requirements:
313
294
  - - ">="
314
295
  - !ruby/object:Gem::Version
315
- version: 1.9.3
296
+ version: '2.2'
316
297
  required_rubygems_version: !ruby/object:Gem::Requirement
317
298
  requirements:
318
299
  - - ">"
319
300
  - !ruby/object:Gem::Version
320
301
  version: 1.3.1
321
302
  requirements: []
322
- rubyforge_project:
323
- rubygems_version: 2.5.2
303
+ rubygems_version: 3.0.3
324
304
  signing_key:
325
305
  specification_version: 4
326
- summary: aruba-1.0.0.pre.alpha.2
306
+ summary: aruba-1.0.0.pre.alpha.3
327
307
  test_files: []
data/History.md DELETED
@@ -1,612 +0,0 @@
1
- ## [v1.0.0-alpha.2](https://github.com/cucumber/aruba/compare/v0.14.1...v1.0.0.alpha)
2
-
3
- * Update examples for usage in README
4
- * Fix environment manipulation (#442)
5
- * Update supported ruby versions in .travis.yml (#449)
6
- * Use license_finder version which is usable for rubies `< 2.3` (#451)
7
- * Wrap test runners in `bundle exec` (#447)
8
- * Fix wording in README (#445)
9
- * Restructure README and upload feature files to cucumber.pro (#444)
10
-
11
- ## [v1.0.0-alpha.1](https://github.com/cucumber/aruba/compare/v0.14.1...v1.0.0.alpha)
12
-
13
- * Use new proposed structure for gems by bundler (#439)
14
- * Rename methods which run commands (#438)
15
- * Fix dependency error for install (#427)
16
- * Actually fail the build if rake test fails (#433)
17
- * Improve frozen-string-literals compatibility. (#436)
18
- * Fix running commands on Windows (#387)
19
- * Fix running commands on Windows (#387)
20
- * Set permissions to values which are supported on Windows (PR [#398](https://github.com/cucumber/aruba/issues/398), issue [#388](https://github.com/cucumber/aruba/issues/388)
21
- * Remove Aruba::Reporting (PR #389)
22
- * Rename bin/cli to bin/aruba-test-cli to prevent name conflict (PR #390)
23
- * Drop support for `ruby < 1.9.3` and rubinius (PR #385)
24
- * Fixed wrong number of arguments in `Aruba::Platforms::WindowsEnvironmentVariables#delete` (issue #349, PR #358, credit @e2)
25
- * Fixed colors in `script/bootstrap` (PR #352, credit @e2)
26
- * Fixed use of removed `Utils`-module (PR #347, credit @e2)
27
- * Fixed exception handler in BasicProcess (PR #357, credit @e2)
28
- * Fixed step to check for existing of files (PR #375, credit @rubbish)
29
- * Fixed unset instance variable (PR ##372, credit @e2)
30
- * Added vision and hints to project README (PR #366)
31
- * Fixed setting environment variables on Windows (PR #358, credit @e2)
32
- * Fixed the logic to determine disk usage (PR #359, credit @e2)
33
- * Prefixed exception in `rescue`-call to make it fail with a proper error message (issue #376)
34
- * Run and build aruba in isolated environment via docker (credit @e2 in #353, PR #382)
35
- * Run container with docker-compose without making docker-compose a required dependency. Rake tasks read in the docker-compose.yml instead (PR #382)
36
- * Document developer rake tasks via cucumber features (PR #382)
37
- * Add more hints to CONTRIBUTING.md (PR #382)
38
- * Add TESTING.md (WIP) (credit @e2) (PR #382)
39
- * Cleanup rake tasks via separate namespaces (PR #382)
40
- * Some more minor fixes (PR #382)
41
- * Don't run feature test if executable required for test is not installed (python, bash, zsh, javac, ...) (PR #382)
42
- * Support for rubies older than 1.9.3 is discontinued - e.g 1.8.7 and 1.9.2
43
- * aruba requires "cucumber 2" for the feature steps. The rest of aruba should
44
- be usable by whatever testing framework you are using.
45
- * Overwriting methods for configuration is discontinued. You need to use
46
- `aruba.config.<variable>` or `Aruba.configure { |config| config.<variable>`
47
- instead.
48
- * "aruba/reporting" will be removed. Please use `@debug`-tag + `byebug`,
49
- `debugger`, `pry` to troubleshoot your feature tests.
50
- * Set environment variables will have only effect on `#run` and the like +
51
- `#with_environment { }`.
52
- * The process environment will be fully resetted between tests. Sharing state
53
- via ENV['VAR'] = 'shared state' between tests will not be possible anymore.
54
- Please make that obvious by using explicit steps or use the aruba API for
55
- that.
56
- * There will be a major cleanup for command execution. There will be only
57
- `run` and `run_simple` left. `run_interactive` is replaced by `run`.
58
- * Setting the root directory of aruba via method overwrite or configuration -
59
- this should be your project root directory where the test suite is run.
60
- * The direct use of "InProcess", "DebugProcess" and "SpawnProcess" is not
61
- supported anymore. You need to use "Command" instead. But be careful, it has
62
- a different API.
63
- * HOME can be configured via `Aruba.configure {}` and defaults to
64
- `File.join(aruba.config.root_directory, aruba.config.working_directory?)`
65
- if `aruba/cucumber` or `aruba/rspec` is used.
66
- * Use different working directories based on test suite - RSpec, Cucumber.
67
- It's `tmp/rspec` and `tmp/cucumber` now to make sure they do not overwrite
68
- the test results from each other.
69
- * The use of `@interactive` is discontinued. You need to use
70
- `#last_command_started`-method to get access to the interactively started
71
- command.
72
- * If multiple commands have been started, each output has to be check
73
- separately
74
-
75
- ```cucumber
76
- Scenario: Detect stdout from all processes
77
- When I run `printf "hello world!\n"`
78
- And I run `cat` interactively
79
- And I type "hola"
80
- And I type ""
81
- Then the stdout should contain:
82
- """
83
- hello world!
84
- """
85
- And the stdout should contain:
86
- """
87
- hola
88
- """
89
- And the stderr should not contain anything
90
- ```
91
-
92
- ## [v0.14.1](https://github.com/cucumber/aruba/compare/v0.14.0...v0.14.1)
93
-
94
- * Fixed bug in framework step
95
-
96
- ## [v0.14.0](https://github.com/cucumber/aruba/compare/v0.13.0...v0.14.0)
97
-
98
- * Add `<project_root>/exe` to search path for commands: This is the new default if you setup a
99
- project with bundler.
100
- * Add some more steps to modify environment
101
-
102
- ## [v0.13.0](https://github.com/cucumber/aruba/compare/v0.12.0...v0.13.0)
103
-
104
- * Add two new hooks for rspec and cucumber to make troubleshooting feature
105
- files easier (PR #338):
106
- * command_content: Outputs command content - helpful for scripts
107
- * command_filesystem_status: Outputs information like group, owner, mode,
108
- atime, mtime
109
- * Add generator to create ad hoc script file (PR #323, @AdrieanKhisbe)
110
- * Colored announcer output similar to the color of `cucumber` tags: cyan
111
- * Fixed bug in announcer. It announces infomation several times due to
112
- duplicate announce-calls.
113
- * Refactorings to internal `#simple_table`-method (internal)
114
- * Refactored Announcer, now it supports blocks for announce as well (internal)
115
- * Fix circular require warnings (issue #339)
116
- * Fix use of old instances variable "@io_wait" (issue #341). Now the
117
- default value for io_wait_timeout can be set correctly.
118
- * Make it possible to announce information on command error, using a new option
119
- called `activate_announcer_on_command_failure` (PR #335, @njam)
120
- * Re-integrate `event-bus`-library into `aruba`-core (PR #342)
121
-
122
- ## [v0.12.0](https://github.com/cucumber/aruba/compare/v0.11.2...v0.12.0)
123
-
124
- * Add matcher to check if a command can be found in PATH (PR #336)
125
- * Fixed issue with environment variables set by external libraries (fix #321,
126
- issue #320)
127
-
128
- ## [v0.11.2](https://github.com/cucumber/aruba/compare/v0.11.1...v0.11.2)
129
-
130
- * Fixed problem with positional arguments in `#run_simple()` (issue #322)
131
-
132
-
133
- ## [v0.11.1](https://github.com/cucumber/aruba/compare/v0.11.0...v0.11.1)
134
-
135
- * Use fixed version of event-bus
136
- * Refactored and improved documentation (feature tests) in PR #309
137
-
138
- ## [v0.11.0](https://github.com/cucumber/aruba/compare/v0.11.0.pre4...v0.11.0)
139
-
140
- * Accidently pushed to rubygems.org - yanked it afterwards
141
-
142
- ## [v0.11.0.pre4](https://github.com/cucumber/aruba/compare/v0.11.0.pre3...v0.11.0.pre4)
143
-
144
- * Fixed syntax for Hash on ruby 1.8.7
145
- * Reorder rubies in .travis.yml
146
-
147
- ## [v0.11.0.pre3](https://github.com/cucumber/aruba/compare/v0.11.0.pre2...v0.11.0.pre3)
148
-
149
- * Fixed syntax for proc on ruby 1.8.7
150
-
151
- ## [v0.11.0.pre2](https://github.com/cucumber/aruba/compare/v0.11.0.pre...v0.11.0.pre2)
152
-
153
- * Integrate `EventBus` to decouple announcers from starting, stopping commands
154
- etc. This uses nearly the same implementation like `cucumber`. (PR #309)
155
- * Starting/Stopping a command directly (`command.start`, `command.stop`) is now
156
- reported to the command monitor and `last_command_stopped` is updated
157
- correctly
158
- * Added `#restart` to `Command` to make it possible to restart a command
159
- * Added check to prevent a command which has already been started, to be
160
- started again. Otherwise you've got hidden commands which are not stopped
161
- after a cucumber/rspec/minitest run.
162
- * Adding alot of documentation to `aruba`
163
- * Refactored `#run`: Now it wants you to pass a `Hash` containing the options.
164
- The old syntax is still supported, but is deprecated.
165
- * Added `#find_command` as experimental feature. It searches the started
166
- commands from last to first.
167
- * Added `be_an_executable` matcher
168
-
169
-
170
- ## [v0.11.0.pre](https://github.com/cucumber/aruba/compare/v0.10.2...v0.11.0.pre)
171
-
172
- * Set stop signal which should be used to stop a process after a timeout or
173
- used to terminate a process. This can be used to stop processes running
174
- docker + "systemd". If you send a systemd-enable container SIGINT it will be
175
- stopped.
176
- * Added a configurable amount of time after a command was started -
177
- startup_wait_time. Otherwise you get problems when a process takes to long to
178
- startup when you run in background and want to sent it a signal.
179
- * Replace `<variable>` in commandline, e.g. `<pid-last-command-started>`
180
- [experimental]
181
- * Added announce formatter for time spans, e.g. `startup_wait_time`
182
- * All `*Process`-classes e.g. `BasicProcess`, `SpawnProcess` etc. are marked as
183
- private. Users should use `#run('cmd')` and don't use the classes directly.
184
- * `rvm`-methods are deprecated. They too ruby specific.
185
-
186
-
187
- ## [v0.10.2](https://github.com/cucumber/aruba/compare/v0.10.1...v0.10.2)
188
-
189
- * Fixed problem in regex after merge of step definitions
190
-
191
-
192
- ## [v0.10.1](https://github.com/cucumber/aruba/compare/v0.10.0...v0.10.1)
193
-
194
- * Merged remove steps for file and directory from 4 into 2 step definitions
195
-
196
-
197
- ## [v0.10.0](https://github.com/cucumber/aruba/compare/v0.10.0.pre2...v0.10.0)
198
-
199
- * Fix '"#exit_timeout" is deprecated' error (issue #314)
200
-
201
- ## [v0.10.0.pre2](https://github.com/cucumber/aruba/compare/v0.10.0.pre...v0.10.0.pre2)
202
-
203
- * Take over code from `RSpec::Support::ObjectFormatter` since `rspec-support`
204
- is not intended for public use.
205
-
206
- ## [v0.10.0.pre](https://github.com/cucumber/aruba/compare/v0.9.0...v0.10.0)
207
-
208
- * Add some new steps to make writing documentation easier using "cucumber",
209
- "rspec", "minitest" together with "aruba" - see [Feature](features/getting_started/supported_testing_frameworks.feature)
210
- for some examples
211
- * Write output of commands directly to disk if SpawnProcess is used (see https://github.com/cucumber/aruba/commit/85d74fcca4fff4e753776925d8b003cddaa8041d)
212
- * Refactored API of cucumber steps to reduce the need for more methods and make
213
- it easier for users to write their own steps (issue #306)
214
- * Added `aruba init` to the cli command to setup environment for aruba (issue
215
- #308)
216
- * Added new method `delete_environment_variable` to remove environment variable
217
- * Added work around because of method name conflict between Capybara and RSpec
218
- (https://github.com/cucumber/aruba/commit/1939c4049d5195ffdd967485f50119bdd86e98a0)
219
-
220
-
221
- ## [v0.9.0](https://github.com/cucumber/aruba/compare/v0.9.0.pre2...v0.9.0)
222
-
223
- * Fix feature test
224
- * Fix ordering in console
225
- * Fix bug in console handling SIGINT
226
- * Deprecated Aruba/Reporting before we remove it
227
-
228
- ## [v0.9.0.pre2](https://github.com/cucumber/aruba/compare/v0.9.0.pre...v0.9.0.pre2)
229
-
230
- * Redefine #to_s and #inspect for BasicProcess to reduce the sheer amount of
231
- information, if a command produces a lot of output
232
- * Added new matcher `#all_objects` to check if an object is included + a error message for
233
- failures which is similar to the `#all`-matcher of `RSpec`
234
- * Add `have_output`-, `have_output_on_stderr`, `have_output_on_stdout`-matchers
235
- * Replace all `assert_*` and `check_*`-methods through expectations
236
- * Add hook `@announce-output` to output both, stderr and stdout
237
- * Add a lot of documentation (issue #260)
238
- * Replace `#last_command` through `#last_command_started` and
239
- `#last_command_stopped` to make it more explicit
240
- * Improve syntax highlighting in cucumber feature tests by adding programming
241
- language to `"""`-blocks
242
- * Rename tags `@ignore-*` to `@unsupported-on-*`
243
- * Introduce our own `BaseMatcher`-class to remove the dependency to `RSpec`'s
244
- private matcher APIs
245
- * Now we make the process started via `SpawnProcess` the leader of the group to
246
- kill all sub-processes more reliably
247
-
248
-
249
- ## [v0.9.0.pre](https://github.com/cucumber/aruba/compare/v0.8.1...v0.9.0.pre)
250
-
251
- * Improve documentation for filesystem api and move it to feature tests
252
- * Add logger to aruba. Its output can be captured by rspec.
253
- * Fix incorrect deprecation message for check_file_presence (issue #292)
254
- * Fix for Gemfile excludes windows for many gems (issue #282)
255
- * Make feature tests compatible with ruby 1.9.2
256
- * Gather disk usage for file(s) (issue #294)
257
- * Replace keep_ansi-config option by remove_ansi_escape_sequences-option
258
- * Split up `#unescape` into `#extract_text` and `#unescape_text`
259
- * Use `UnixPlatform` and `WindowsPlatform` to make code for different platforms maintainable
260
- * Work around `ENV`-bug in `Jruby` buy using `#dup` on `ENV.to_h` (issue jruby/jruby#3162)
261
- * Speed up test on `JRuby` by using `--dev`-flag
262
- * Work around problems when copying files with `cp` on MRI-ruby 1.9.2
263
- * Add cmd.exe /c for SpawnProcess on Windows (issue #302)
264
- * Split up `#which` for Windows and Unix/Linux (issue #304)
265
- * Add `aruba console`-command to play around with aruba (issue 305)
266
-
267
-
268
- ## [v0.8.1](https://github.com/cucumber/aruba/compare/v0.8.0...v0.8.1)
269
-
270
- * Fix problem if working directory of aruba does not exist (issue #286)
271
- * Re-Add removed method only_processes
272
- * Fixed problem with last exit status
273
- * Added appveyor to run tests of aruba on Windows (issue #287)
274
- * Make the home directory configurable and use Around/around-hook to apply it
275
- * Add announcer to output the full environment before a command is run
276
- * Use prepend_environment_variable to modify PATH for rspec integration
277
- * Add VERSION-constant to aruba and use it for code which should be activated on >= 1.0.0
278
-
279
- ## [v0.8.0](https://github.com/cucumber/aruba/compare/v0.8.0.pre3...v0.8.0)
280
- * Build with cucumber 1.3.x on ruby 1.8.7, with cucumber 2.x on all other platforms
281
- * Fixed bugs in aruba's cucumber steps
282
- * Disable use of `win32/file`
283
- * Fixed but in `in_current_dir*` not returning the result of the block
284
- * Fixed checks for file content
285
- * Fixed selectors for DebugProcess and InProcess to support sub-classes as well
286
-
287
-
288
- ## [v0.8.0.pre3](https://github.com/cucumber/aruba/compare/v0.8.0.pre2...v0.8.0.pre3)
289
- * Depend on cucumber 1.3.x for compatibility on ruby 1.8.7
290
- * Change PWD and OLDPW when `cd('path') {}` is used within that block
291
- * Make nesting of `cd` possible
292
- * Make `run` inside `cd` possible
293
- * Fixed some bugs
294
- * Move `Aruba.proces = InProcess|SpawnProcess|DebugProcess` to `aruba.config`
295
- * Deprecate direct use of `InProcess|SpawnProcess|DebugProcess`. Now `Command`
296
- needs to be used
297
- * Add new configuration options `command_launcher` and `main_klass` for
298
- deprecation of old-style `Aruba.process = <class>`, `:spawn` is the default
299
- value for the `command_launcher`-option
300
- * Added checks for version of `rspec-expectations` to support older `rspec`
301
- versions like `2.11`
302
- * Now each `path/to/dir` pushed to `aruba.current_directory` is `pop`ed as whole
303
- * Make testing of `aruba.current_directory` easier by supporting `end_with?` and `start_with?`
304
-
305
- ## [v0.8.0.pre2](https://github.com/cucumber/aruba/compare/v0.8.0...v0.8.0.pre2)
306
- * Relax requirement on rspec-expectations (3.3 -> 2.11)
307
-
308
- ## [v0.8.0.pre](https://github.com/cucumber/aruba/compare/v0.7.4...v0.8.0.pre)
309
- * Make aruba compatible with "ruby 1.8.7" and "ruby 1.9.3" again (fixes #279)
310
- * Move more and more documentation to cucumber steps (partly fixes #268)
311
- * Refactoring of test suits, now rspec tests run randomly
312
- * Move Aruba constants to configuration class (fixes #271)
313
- * Added runtime configuration via `aruba.config` which is reset for each test run
314
- * Refactored hooks: now there are `after()` and `before()`-hooks, old
315
- before_cmd-hook is still working, but is deprecated, added new
316
- `after(:command)`-hook.
317
- * Refactored jruby-startup helper
318
- * Cleanup API by moving deprecated methods to separate class
319
- * Cleanup Core API - reduced to `cd`, `expand_path`, `setup_aruba` and use expand_path wherever possible (fixes #253)
320
- * Better isolation for environment variable manipulation - really helpful from 1.0.0 on
321
- * Move configuration files like `jruby.rb` to `aruba/config/`-directory
322
- * Change default exit timeout to 15 seconds to work around long running processes on travis
323
- * Use of instance variables like @aruba_timeout_seconds or
324
- @aruba_io_wait_seconds are deprecated. Use `Aruba.configure do |config|
325
- config.exit_timeout = 10` etc. for this.
326
-
327
- ## [v0.7.4](https://github.com/cucumber/aruba/compare/v0.7.2...v0.7.4)
328
- * Really Fixed post install message
329
-
330
- ## [v0.7.3](https://github.com/cucumber/aruba/compare/v0.7.2...v0.7.3)
331
- * Fixed post install message
332
-
333
- ## [v0.7.2](https://github.com/cucumber/aruba/compare/v0.7.1...v0.7.2)
334
- * Do not trigger Announcer API deprecation warning (issue #277)
335
-
336
- ## [v0.7.1](https://github.com/cucumber/aruba/compare/v0.7.0...v0.7.1)
337
- * Do not break if @interactive is used
338
-
339
- ## [v0.7.0](https://github.com/cucumber/aruba/compare/v0.6.2...v0.7.0)
340
- * Introducing root_directory (issue #232)
341
- * Introducing fixtures directory (issue #224)
342
- * Make sure a file/directory does not exist + Cleanup named file/directory steps (issue #234)
343
- * Make matcher have_permisions public and add documentation (issue #239)
344
- * Added matcher for file content (issue #238)
345
- * Add rspec integrator (issue #244)
346
- * Deprecate _file/_directory in method names (issue #243)
347
- * Improve development environment (issue #240)
348
- * Cleanup process management (issue #257)
349
- * Make path content available through matchers and api metchods (issue #250)
350
- * Refactor announcer to support user defined announce channels (fixes #267)
351
- * `InProcess` requires that the working directory is determined on runtime not no loadtime
352
-
353
- ## [v0.6.2](https://github.com/cucumber/aruba/compare/v0.6.1...v0.6.2)
354
- * Fixed minor issue #223)
355
- * Added support for ruby 2.1.3 -- 2.1.5
356
- * Added support for comparison to a fixture file
357
-
358
- ## [v0.6.1](https://github.com/cucumber/aruba/compare/v0.6.0...v0.6.1)
359
- * Added support for ruby 2.1.2
360
- * Added support for ~ expansion
361
- * Added support for with_env
362
-
363
- ## [v0.6.0](https://github.com/cucumber/aruba/compare/v0.5.4...v0.6.0)
364
- * Dropped support for ruby 1.8
365
- * Added support for ruby 2.1.0 and 2.1.1
366
- * Added rspec 3.0.0 support
367
-
368
- ## [v0.5.4](https://github.com/cucumber/aruba/compare/v0.5.3...v0.5.4)
369
- * Added support for piping in files (#154 maxmeyer, dg-vrnetze)
370
- * Added cucumber steps for environment variables (#156 dg-vrnetze)
371
- * Added support for file mode (#157 maxmeyer, dg-vrnetze)
372
-
373
- ## [v0.5.3](https://github.com/cucumber/aruba/compare/v0.5.2...v0.5.3)
374
- * Fix for UTF-8 support (#151 Matt Wynne, Jarl Friis)
375
- * Fix for open file leakage (#150 @JonRowe)
376
-
377
- ## [v0.5.2](https://github.com/cucumber/aruba/compare/v0.5.1...v0.5.2)
378
-
379
- * Plugin API for greater speed. Test Ruby CLI programs in a single Ruby process (#148 Aslak Hellesøy)
380
- * Fix memory leak when several commands are executed in a single run (#144 @y-higuchi)
381
-
382
- ## [v0.5.1](https://github.com/cucumber/aruba/compare/v0.5.0...v0.5.1)
383
- * Individual timeout settings when running commands (#124 Jarl Friis)
384
- * Varous fixes for JRuby tests, should now work on more versions of JRuby
385
-
386
- ## [v0.5.0](https://github.com/cucumber/aruba/compare/v0.4.10...v0.5.0)
387
- * Add #with_file_content to the DSL (#110 Pavel Argentov)
388
- * Make JRuby performance tweaks optional (#102 Taylor Carpenter, #125 Andy Lindeman)
389
- * Add assert_partial_output_interactive so you can peek at the output from a running process (#104 Taylor Carpenter)
390
- * Add assert_not_matching_output (#111 Pavel Argentov)
391
- * Add remove_dir (#121 Piotr Niełacny)
392
-
393
- ## [v0.4.11](https://github.com/cucumber/aruba/compare/v0.4.10...v0.4.11)
394
- * Fix duplicated output (#91 Robert Wahler, Matt Wynne)
395
- * Fix Gemspec format (#101 Matt Wynne)
396
-
397
- ## [v0.4.10](https://github.com/cucumber/aruba/compare/v0.4.9...v0.4.10)
398
- * Fix broken JRuby file following rename of hook (Thomas Reynolds)
399
- * Add terminate method to API (Taylor Carpenter)
400
-
401
- ## [v0.4.9](https://github.com/cucumber/aruba/compare/v0.4.8...v0.4.9)
402
- * Rename before_run hook to before_cmd (Matt Wynne)
403
- * Fix 1.8.7 compatibility (#95 Dave Copeland)
404
-
405
- ## [v0.4.8](https://github.com/cucumber/aruba/compare/v0.4.7...v0.4.8)
406
-
407
- * Add before_run hook (Matt Wynne)
408
- * Add JRuby performance tweaks (#93 Myron Marston / Matt Wynne)
409
- * Invalid/Corrupt spec file for 0.4.7 - undefined method call for nil:Nilclass (#47 Aslak Hellesøy)
410
-
411
- ## [v0.4.7](https://github.com/cucumber/aruba/compare/v0.4.6...v0.4.7)
412
-
413
- * Remove rdiscount dependency. (#85 Aslak Hellesøy)
414
- * Pin to ffi 1.0.9 since 1.0.10 is broken. (Aslak Hellesøy)
415
- * Added file size specific steps to the Aruba API. (#89 Hector Castro)
416
-
417
- ## [v0.4.6](https://github.com/cucumber/aruba/compare/v0.4.5...v0.4.6)
418
-
419
- * Upgraded deps to latest gems. (Aslak Hellesøy)
420
- * Added Regexp support to Aruba::Api#assert_no_partial_output (Aslak Hellesøy)
421
-
422
- ## [v0.4.5](https://github.com/cucumber/aruba/compare/v0.4.4...v0.4.5)
423
-
424
- * Better assertion failure message when an exit code is not as expected. (Matt Wynne)
425
-
426
- ## [v0.4.4](https://github.com/cucumber/aruba/compare/v0.4.3...v0.4.4)
427
-
428
- * Fix various bugs with interative processes. (Matt Wynne)
429
-
430
- ## [v0.4.3](https://github.com/cucumber/aruba/compare/v0.4.2...v0.4.3)
431
-
432
- * Aruba reporting now creates an index file for reports, linking them all together. (Aslak Hellesøy)
433
-
434
- ## [v0.4.2](https://github.com/cucumber/aruba/compare/v0.4.1...v0.4.2)
435
-
436
- * Appending to a file creates the parent directory if it doesn't exist. (Aslak Hellesøy)
437
-
438
- ## [v0.4.1](https://github.com/cucumber/aruba/compare/v0.4.0...v0.4.1)
439
-
440
- * Move more logic into Aruba::Api (Aslak Hellesøy)
441
-
442
- ## [v0.4.0](https://github.com/cucumber/aruba/compare/v0.3.7...v0.4.0)
443
-
444
- * New, awesome HTML reporting feature that captures everything that happens during a scenario. (Aslak Hellesøy)
445
- * ANSI escapes from output are stripped by default. Override this with the @ansi tag. (Aslak Hellesøy)
446
-
447
- ## [v0.3.7](https://github.com/cucumber/aruba/compare/v0.3.6...v0.3.7)
448
-
449
- * Make Aruba::Api#get_process return the last executed process with passed cmd (Potapov Sergey)
450
- * Replace announce with puts to comply with cucumber 0.10.6 (Aslak Hellesøy)
451
- * Fix childprocess STDIN to be synchronous (#40, #71 Tim Ekl)
452
-
453
- ## [v0.3.6](https://github.com/cucumber/aruba/compare/v0.3.5...v0.3.6)
454
-
455
- * Changed default value of @aruba_timeout_seconds from 1 to 3. (Aslak Hellesøy)
456
- * Separate hooks and steps to make it easier to build your own steps on top of Aruba's API (Mike Sassak)
457
- * @no-clobber to prevent cleanup before each scenario (Mike Sassak)
458
-
459
- ## [v0.3.5](https://github.com/cucumber/aruba/compare/v0.3.4...v0.3.5)
460
-
461
- * Store processes in an array to ensure order of operations on Ruby 1.8.x (#48 Mike Sassak)
462
-
463
- ## [v0.3.4](https://github.com/cucumber/aruba/compare/v0.3.3...v0.3.4)
464
-
465
- * Use backticks (\`) instead of quotes (") to specify command line. Quote still works, but is deprecated. (Anthony Eden, Aslak Hellesøy)
466
-
467
- ## [v0.3.3](https://github.com/cucumber/aruba/compare/v0.3.2...v0.3.3)
468
-
469
- * Updated RSpec development requirement to 2.5 (Robert Speicher, Mike Sassak, Aslak Hellesøy)
470
- * Updated RubyGems dependency to 1.6.1 (Robert Speicher)
471
-
472
- ## [v0.3.2](https://github.com/cucumber/aruba/compare/v0.3.1...v0.3.2)
473
-
474
- * Wrong number of args in the When I overwrite step (Aslak Hellesøy)
475
-
476
- ## [v0.3.1](https://github.com/cucumber/aruba/compare/v0.3.0...v0.3.1)
477
-
478
- * Broken 0.3.0 release (#43, #44 Mike Sassak)
479
- * Quotes (") and newline (\n) in step arguments are no longer unescaped. (Aslak Hellesøy)
480
-
481
- ## [v0.3.0](https://github.com/cucumber/aruba/compare/v0.2.8...v0.3.0)
482
-
483
- * Remove latency introduced in the 0.2.8 release (#42 Mike Sassak)
484
- * New stepdef Then /^the stdout should contain:$/ do |partial_output| (Aslak Hellesøy)
485
- * Quotes (") and newline (\n) in step arguments no longer need to be backslash-escaped. (Aslak Hellesøy)
486
-
487
- ## [v0.2.8](https://github.com/cucumber/aruba/compare/v0.2.7...v0.2.8)
488
-
489
- * Replaced background_process with childprocess, a cross-platform process control library. This will allow Aruba to run on Windows and JRuby in addition to *nix MRI. (#16, #27, #31 Mike Sassak, Jari Bakken, Matt Wynne, Arve Knudsen)
490
-
491
- ## [v0.2.7](https://github.com/cucumber/aruba/compare/v0.2.6...v0.2.7)
492
-
493
- * Upgrade to Cucumber 0.10.0. (Aslak Hellesøy)
494
- * require 'aruba' does nothing - you have to require 'aruba/cucumber' now. This is to prevent bundler from loading it when we don't want to. (Aslak Hellesøy)
495
- * Outputting a lot of data causes process to time out (#30 Mike Sassak)
496
-
497
- ## [v0.2.6](https://github.com/cucumber/aruba/compare/v0.2.5...v0.2.6)
498
-
499
- * You can set @aruba_timeout_seconds in a Before hook to tell Aruba to wait for a process to complete. Default: 1 second. (Aslak Hellesøy)
500
- * Fixed small bug in /^the stdout should contain exactly:$/ (Aslak Hellesøy)
501
-
502
- ## [v0.2.5](https://github.com/cucumber/aruba/compare/v0.2.4...v0.2.5)
503
-
504
- * Added 'a file named "whatever" should (not) exist' (Robert Speicher)
505
- * Added 'a directory named "whatever" should (not) exist' (Robert Speicher)
506
- * Added /^the stderr should contain exactly:"$/ (Aslak Hellesøy)
507
- * Added /^the stdout should contain exactly:"$/ (Aslak Hellesøy)
508
- * Added /it should pass with exactly:/ (Aslak Hellesøy)
509
- * @announce, @announce-dir and @announce-cmd for interactive processes (Mike Sassak)
510
- * Add step defs for detecting output, stdout and stderr by process name (Mike Sassak)
511
- * Stop all processes before verifying filesystem changes to ensure async operations are complete (#17 Mike Sassak)
512
- * Outputting large amounts of data causes run steps to hang (#18 Mike Sassak)
513
-
514
- ## [v0.2.4](https://github.com/cucumber/aruba/compare/v0.2.3...v0.2.4)
515
-
516
- * Added step definitions for removing files and checking presence of a single file. (Aslak Hellesøy)
517
-
518
- ## [v0.2.3](https://github.com/cucumber/aruba/compare/v0.2.2...v0.2.3)
519
-
520
- * Directory should not exist gives false-positive (#13,#15 Nicholas Rutherford)
521
- * Added step definitions for comparing file contents with regexps (#9 Aslak Hellesøy)
522
- * Always put ./bin at the beginning of $PATH to make it easier to run own executables (#7 Aslak Hellesøy)
523
- * Communication with interactive processes (#4 Mike Sassak)
524
- * Remove hyphens separating stdout and stderr (Arve Knudsen)
525
-
526
- ## [v0.2.2](https://github.com/cucumber/aruba/compare/v0.2.1...v0.2.2)
527
-
528
- * Added a @bin tag that sets up './bin' first on the path (Aslak Hellesøy)
529
- * Richer API making aruba easier to use from Ruby code. (Mark Nijhof, Aslak Hellesøy)
530
- * No more support for RVM. Use rvm 1.9.2,1.8.7 exec cucumber .... instead. (Mark Nijhof, Aslak Hellesøy)
531
-
532
- ## [v0.2.1](https://github.com/cucumber/aruba/compare/v0.2.0...v0.2.1)
533
-
534
- * Always compare with RSpec should =~ instead of should match. This gives a diff when there is no match. (Aslak Hellesøy)
535
-
536
- ## [v0.2.0](https://github.com/cucumber/aruba/compare/v0.1.9...v0.2.0)
537
-
538
- * Added aruba.gemspec. (David Chelimsky)
539
- * Several step definitions regarding output have changed. (#1 Aslak Hellesøy)
540
-
541
- - /^I should see "([^\"]*)"$/
542
- + /^the output should contain "([^"]*)"$/
543
-
544
- - /^I should not see "([^\"]*)"$/
545
- + /^the output should not contain "([^"]*)"$/
546
-
547
- - /^I should see:$/
548
- + /^the output should contain:$/
549
-
550
- - /^I should not see:$/
551
- + /^the output should not contain:$/
552
-
553
- - /^I should see exactly "([^\"]*)"$/
554
- + /^the output should contain exactly "([^"]*)"$/
555
-
556
- - /^I should see exactly:$/
557
- + /^the output should contain exactly:$/
558
-
559
- - /^I should see matching \/([^\/]*)\/$/
560
- + /^the output should match \/([^\/]*)\/$/
561
-
562
- - /^I should see matching:$/
563
- + /^the output should match:$/
564
-
565
- ## [v0.1.9](https://github.com/cucumber/aruba/compare/v0.1.8...v0.1.9)
566
-
567
- * If the GOTGEMS environment variable is set, bundler won't run (faster). (Aslak Hellesøy)
568
-
569
- ## [v0.1.8](https://github.com/cucumber/aruba/compare/v0.1.7...v0.1.8)
570
-
571
- * Use // instead of "" for "I should see matching" step. (Aslak Hellesøy)
572
- * Replace rvm gemset character '%' with '@' for rvm 0.1.24 (#5 Ashley Moran)
573
- * Support gem bundler, making it easier to specify gems. (Aslak Hellesøy)
574
-
575
- ## [v0.1.7](https://github.com/cucumber/aruba/compare/v0.1.6...v0.1.7)
576
-
577
- * New @announce-stderr tag (Robert Wahler)
578
- * New "I should see matching" steps using Regexp (Robert Wahler)
579
-
580
- ## [v0.1.6](https://github.com/cucumber/aruba/compare/v0.1.5...v0.1.6)
581
-
582
- * When /^I successfully run "(.*)"$/ now prints the combined output if exit status is not 0. (Aslak Hellesøy)
583
- * Add bundle to list of common ruby scripts. (Aslak Hellesøy)
584
-
585
- ## [v0.1.5](https://github.com/cucumber/aruba/compare/v0.1.4...v0.1.5)
586
-
587
- * Added ability to map rvm versions to a specific version with config/aruba-rvm.yml. (Aslak Hellesøy)
588
- * Check for presence of files. (Aslak Hellesøy)
589
- * Allow specification of rvm gemsets. (Aslak Hellesøy)
590
- * Detect ruby commands and use current ruby when rvm is not explicitly used. (Aslak Hellesøy)
591
- * Added support for rvm, making it possible to choose Ruby interpreter. (Aslak Hellesøy)
592
- * Added @announce-cmd, @announce-stdout and @announce tags, useful for seeing what's executed and outputted. (Aslak Hellesøy)
593
-
594
- ## [v0.1.4](https://github.com/cucumber/aruba/compare/v0.1.3...v0.1.4)
595
-
596
- * New step definition for appending to a file (Aslak Hellesøy)
597
-
598
- ## [v0.1.3](https://github.com/cucumber/aruba/compare/v0.1.2...v0.1.3)
599
-
600
- * New step definition for cd (change directory) (Aslak Hellesøy)
601
-
602
- ## [v0.1.2](https://github.com/cucumber/aruba/compare/v0.1.1...v0.1.2)
603
-
604
- * Separated API from Cucumber step definitions, makes this usable without Cucumber. (Aslak Hellesøy)
605
-
606
- ## [v0.1.1](https://github.com/cucumber/aruba/compare/v0.1.0...v0.1.1)
607
-
608
- * Better Regexp escaping (David Chelimsky)
609
-
610
- ## [v0.1.0](https://github.com/cucumber/aruba/compare/ed6a175d23aaff62dbf355706996f276f304ae8b...v0.1.1)
611
-
612
- * First release (David Chelimsky and Aslak Hellesøy)