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

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.
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)