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.
- checksums.yaml +5 -5
- data/.github/PULL_REQUEST_TEMPLATE.md +2 -1
- data/.rubocop.yml +6 -181
- data/.rubocop_todo.yml +364 -0
- data/.travis.yml +63 -34
- data/.yardopts +3 -0
- data/CHANGELOG.md +1121 -0
- data/CONTRIBUTING.md +179 -78
- data/Gemfile +29 -44
- data/README.md +41 -11
- data/Rakefile +35 -35
- data/appveyor.yml +6 -5
- data/aruba.gemspec +14 -16
- data/bin/console +2 -11
- data/cucumber.yml +0 -7
- data/fixtures/cli-app/README.md +1 -1
- data/fixtures/cli-app/Rakefile +1 -1
- data/fixtures/cli-app/cli-app.gemspec +1 -0
- data/fixtures/cli-app/lib/cli/app/suppress_simple_cov_output.rb +3 -3
- data/fixtures/cli-app/lib/cli/app/version.rb +1 -1
- data/fixtures/empty-app/Rakefile +1 -1
- data/fixtures/empty-app/cli-app.gemspec +1 -0
- data/fixtures/empty-app/lib/cli/app/version.rb +1 -1
- data/fixtures/getting-started-app/Gemfile +1 -1
- data/lib/aruba/api.rb +3 -10
- data/lib/aruba/api/bundler.rb +16 -0
- data/lib/aruba/api/commands.rb +249 -0
- data/lib/aruba/api/core.rb +24 -10
- data/lib/aruba/api/environment.rb +12 -7
- data/lib/aruba/api/filesystem.rb +22 -20
- data/lib/aruba/api/text.rb +3 -9
- data/lib/aruba/aruba_path.rb +3 -18
- data/lib/aruba/basic_configuration.rb +3 -19
- data/lib/aruba/cli.rb +1 -1
- data/lib/aruba/colorizer.rb +33 -33
- data/lib/aruba/command.rb +4 -0
- data/lib/aruba/config_wrapper.rb +1 -1
- data/lib/aruba/configuration.rb +78 -0
- data/lib/aruba/console.rb +5 -5
- data/lib/aruba/console/help.rb +1 -1
- data/lib/aruba/cucumber.rb +0 -1
- data/lib/aruba/cucumber/command.rb +55 -115
- data/lib/aruba/cucumber/environment.rb +1 -1
- data/lib/aruba/cucumber/file.rb +9 -21
- data/lib/aruba/cucumber/hooks.rb +6 -62
- data/lib/aruba/event_bus/name_resolver.rb +1 -2
- data/lib/aruba/hooks.rb +1 -1
- data/lib/aruba/initializer.rb +3 -3
- data/lib/aruba/matchers/base/base_matcher.rb +2 -2
- data/lib/aruba/matchers/base/message_indenter.rb +19 -0
- data/lib/aruba/matchers/base/object_formatter.rb +2 -2
- data/lib/aruba/matchers/collection/include_an_object.rb +7 -9
- data/lib/aruba/matchers/command/be_successfully_executed.rb +2 -4
- data/lib/aruba/matchers/command/have_exit_status.rb +1 -1
- data/lib/aruba/matchers/command/have_finished_in_time.rb +2 -4
- data/lib/aruba/matchers/command/have_output.rb +9 -4
- data/lib/aruba/matchers/command/have_output_on_stderr.rb +1 -1
- data/lib/aruba/matchers/command/have_output_on_stdout.rb +1 -1
- data/lib/aruba/matchers/command/have_output_size.rb +1 -1
- data/lib/aruba/matchers/directory/be_an_existing_directory.rb +4 -6
- data/lib/aruba/matchers/directory/have_sub_directory.rb +4 -6
- data/lib/aruba/matchers/file/be_a_command_found_in_path.rb +2 -4
- data/lib/aruba/matchers/file/be_an_existing_executable.rb +4 -6
- data/lib/aruba/matchers/file/be_an_existing_file.rb +4 -6
- data/lib/aruba/matchers/file/have_file_content.rb +4 -4
- data/lib/aruba/matchers/file/have_file_size.rb +6 -8
- data/lib/aruba/matchers/file/have_same_file_content.rb +9 -12
- data/lib/aruba/matchers/path/a_path_matching_pattern.rb +2 -4
- data/lib/aruba/matchers/path/be_an_absolute_path.rb +3 -5
- data/lib/aruba/matchers/path/be_an_existing_path.rb +4 -6
- data/lib/aruba/matchers/path/have_permissions.rb +6 -8
- data/lib/aruba/matchers/string/include_output_string.rb +8 -10
- data/lib/aruba/matchers/string/match_output_string.rb +9 -11
- data/lib/aruba/matchers/string/output_string_eq.rb +7 -9
- data/lib/aruba/platform.rb +0 -1
- data/lib/aruba/platforms/announcer.rb +26 -70
- data/lib/aruba/platforms/aruba_file_creator.rb +1 -1
- data/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +2 -2
- data/lib/aruba/platforms/aruba_logger.rb +22 -2
- data/lib/aruba/platforms/command_monitor.rb +2 -125
- data/lib/aruba/platforms/filesystem_status.rb +9 -9
- data/lib/aruba/platforms/local_environment.rb +2 -2
- data/lib/aruba/platforms/simple_table.rb +3 -3
- data/lib/aruba/platforms/unix_command_string.rb +7 -4
- data/lib/aruba/platforms/unix_environment_variables.rb +9 -13
- data/lib/aruba/platforms/unix_platform.rb +2 -27
- data/lib/aruba/platforms/unix_which.rb +2 -1
- data/lib/aruba/platforms/windows_command_string.rb +20 -7
- data/lib/aruba/platforms/windows_environment_variables.rb +35 -30
- data/lib/aruba/platforms/windows_which.rb +4 -3
- data/lib/aruba/processes/basic_process.rb +11 -15
- data/lib/aruba/processes/debug_process.rb +5 -0
- data/lib/aruba/processes/in_process.rb +17 -8
- data/lib/aruba/processes/spawn_process.rb +35 -23
- data/lib/aruba/rspec.rb +9 -22
- data/lib/aruba/runtime.rb +7 -5
- data/lib/aruba/setup.rb +6 -4
- data/lib/aruba/tasks/docker_helpers.rb +1 -1
- data/lib/aruba/version.rb +1 -1
- metadata +37 -57
- data/History.md +0 -612
- data/bin/bootstrap +0 -34
- data/fixtures/spawn_process/stderr.sh +0 -3
- data/lib/aruba/api/command.rb +0 -309
- data/lib/aruba/api/deprecated.rb +0 -895
- data/lib/aruba/api/rvm.rb +0 -44
- data/lib/aruba/config.rb +0 -101
- data/lib/aruba/cucumber/rvm.rb +0 -3
- data/lib/aruba/in_process.rb +0 -14
- data/lib/aruba/jruby.rb +0 -4
- data/lib/aruba/matchers/path/match_path_pattern.rb +0 -41
- data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +0 -25
- data/lib/aruba/spawn_process.rb +0 -11
data/CONTRIBUTING.md
CHANGED
@@ -2,15 +2,15 @@
|
|
2
2
|
|
3
3
|
## Introduction
|
4
4
|
|
5
|
-
We would love to get help from you as
|
5
|
+
We would love to get help from you as a **user** and a **contributor**.
|
6
6
|
|
7
|
-
**
|
7
|
+
### As a **User**
|
8
8
|
|
9
9
|
* Tell us how "Aruba" works for you
|
10
|
-
* Spread the word if you like our work and please tell us if
|
10
|
+
* Spread the word if you like our work and please tell us if something is (utterly) wrong
|
11
11
|
* Encourage people in testing their code and keep communicating their needs
|
12
12
|
|
13
|
-
**
|
13
|
+
### As a **Contributor**
|
14
14
|
|
15
15
|
* Send us bug fixes
|
16
16
|
* Add new features to the code
|
@@ -18,55 +18,82 @@ We would love to get help from you as "user" and "contributor".
|
|
18
18
|
* Add missing documentation
|
19
19
|
* Improve our test coverage
|
20
20
|
|
21
|
-
The rest of this document is a guide for those maintaining Aruba, and others
|
21
|
+
The rest of this document is a guide for those maintaining Aruba, and others
|
22
|
+
who would like to submit patches.
|
22
23
|
|
23
|
-
## Contributing to the
|
24
|
+
## Contributing to the Aruba project
|
24
25
|
|
25
|
-
It would be great if all people who want to contribute to the
|
26
|
+
It would be great if all people who want to contribute to the Aruba project
|
27
|
+
— contributors and maintainers — follow the guidelines in this
|
28
|
+
section. There are also "Getting started" sections both for
|
29
|
+
[contributors](#getting-started-as-a-contributor) and
|
30
|
+
[maintainers](#getting-started-as-a-maintainer).
|
26
31
|
|
27
32
|
### Issues
|
28
33
|
|
29
|
-
We appreciate that. But before you do,
|
30
|
-
|
31
|
-
|
32
|
-
*
|
33
|
-
|
34
|
-
*
|
35
|
-
|
34
|
+
About to create a new Github Issue? We appreciate that. But before you do,
|
35
|
+
please learn our basic rules:
|
36
|
+
|
37
|
+
* This is not a support forum. If you have a question, please go to
|
38
|
+
[The Cukes Google Group](http://groups.google.com/group/cukes).
|
39
|
+
* Do you have an idea for a new feature? Then don't expect it to be implemented
|
40
|
+
unless you or someone else submits a
|
41
|
+
[pull request](https://help.github.com/articles/using-pull-requests). It
|
42
|
+
might be better to start a discussion on
|
43
|
+
[the Google Group](http://groups.google.com/group/cukes).
|
44
|
+
* Reporting a bug? Follow our comments in the Issue Template, which is
|
45
|
+
pre-filled when you create the new GitHub Issue.
|
46
|
+
* We love [pull requests](https://help.github.com/articles/using-pull-requests).
|
47
|
+
The same here: Please consider our comments within the pull request template.
|
36
48
|
|
37
49
|
### Pull Requests
|
38
50
|
|
39
|
-
|
51
|
+
#### Contributors
|
40
52
|
|
41
53
|
Please...
|
42
54
|
|
43
55
|
* Fork the project. Make a branch for your change.
|
44
|
-
* Make your feature addition or bug fix &
|
45
|
-
|
46
|
-
*
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
*
|
56
|
+
* Make your feature addition or bug fix — if you're unsure if your
|
57
|
+
addition will be accepted, open a GitHub Issue for discussion first
|
58
|
+
* Make sure your patch is well covered by tests. We don't accept changes that
|
59
|
+
aren't tested.
|
60
|
+
* Do not change the `Rakefile`, gem version number in `version.rb`, or
|
61
|
+
[`CHANGELOG.md`][].
|
62
|
+
(If you want to have your own version, that is fine but bump version in a
|
63
|
+
separate commit, so that we can ignore that commit when we merge your change.)
|
64
|
+
* Make sure your pull request complies with our development style guidelines.
|
65
|
+
* Rebase your branch if needed. This reduces clutter in our git history.
|
66
|
+
* Make sure you don't break other people's code. On major changes: First
|
67
|
+
deprecate, then bump major version, then make breaking changes,
|
68
|
+
* Split up your changes into reviewable git commits which combine all
|
69
|
+
lines/files relevant for a single change.
|
53
70
|
* Send us a pull request.
|
54
71
|
|
55
|
-
|
56
|
-
|
57
|
-
* Use pull requests for larger or controversial changes made by yourself or
|
58
|
-
|
59
|
-
*
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
*
|
67
|
-
|
68
|
-
|
69
|
-
|
72
|
+
#### Maintainers
|
73
|
+
|
74
|
+
* Use pull requests for larger or controversial changes made by yourself or
|
75
|
+
changes you might expected to break the build.
|
76
|
+
* Commit smaller changes directly to master, e.g. fixing typos, adding tests or
|
77
|
+
adding documentation.
|
78
|
+
* Update [`CHANGELOG.md`][] when a pull request is merged.
|
79
|
+
* Make sure all tests are green before merging a pull request.
|
80
|
+
|
81
|
+
### Development style guidelines
|
82
|
+
|
83
|
+
* We try to follow the recommendations in the
|
84
|
+
[Ruby Community Style Guide][] and use
|
85
|
+
[`rubocop`][] to "enforce" it. Please see
|
86
|
+
[.rubocop.yml][] for exceptions.
|
87
|
+
* There should be `action` methods and `getter` methods in Aruba. Only the
|
88
|
+
latter should return values. Please expect the first ones to return `nil`.
|
89
|
+
* Add documentation — aka acceptance tests — for new features
|
90
|
+
using Aruba's Cucumber steps. Place them somewhere suitable in [features/].
|
91
|
+
* Add unit tests where needed to cover edge cases which are not (directly)
|
92
|
+
relevant for users.
|
93
|
+
* Add [YARD] developer documentation to all relevant methods added.
|
94
|
+
* Format your commit messages following these seven rules — see
|
95
|
+
the ["How to Write a Git Commit Message"] blog post for a well-written
|
96
|
+
explanation about the why.
|
70
97
|
1. Separate subject from body with a blank line
|
71
98
|
2. Limit the subject line to 50 characters
|
72
99
|
3. Capitalize the subject line
|
@@ -74,71 +101,122 @@ Please...
|
|
74
101
|
5. Use the imperative mood in the subject line
|
75
102
|
6. Wrap the body at 72 characters
|
76
103
|
7. Use the body to explain what and why vs. how (optional if subject is self-explanatory)
|
77
|
-
8. Use Markdown Markup to style your message (only if required)
|
78
|
-
|
79
104
|
|
80
105
|
## Getting started as a "Contributor"
|
81
106
|
|
82
|
-
###
|
107
|
+
### Requirements
|
108
|
+
|
109
|
+
To get started with Aruba, you only need [Bundler].
|
83
110
|
|
84
|
-
|
85
|
-
running the following command.
|
111
|
+
Install Aruba's dependencies:
|
86
112
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
~~~
|
113
|
+
```bash
|
114
|
+
bundle install
|
115
|
+
```
|
91
116
|
|
92
117
|
### Running tests
|
93
118
|
|
94
|
-
|
95
|
-
to run the test suite.
|
119
|
+
Run the following command to run the test suite.
|
96
120
|
|
97
|
-
|
121
|
+
```bash
|
98
122
|
# Run the test suite
|
99
123
|
bin/test
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
124
|
+
```
|
125
|
+
|
126
|
+
Or use these Rake tasks:
|
127
|
+
|
128
|
+
```bash
|
129
|
+
# Run the whole test suite
|
130
|
+
rake test
|
131
|
+
# Run RSpec tests
|
132
|
+
rake test:rspec
|
133
|
+
# Run Cucumber features
|
134
|
+
rake test:cucumber
|
135
|
+
# Run Cucumber features which are "WORK IN PROGRESS" and are allowed to fail
|
136
|
+
rake test:cucumber_wip
|
137
|
+
```
|
138
|
+
|
139
|
+
If you have problems because our assumptions about your local setup are wrong,
|
140
|
+
perhaps you can use this Docker workflow. This requires [Docker] to be
|
141
|
+
installed on your local system.
|
142
|
+
|
143
|
+
```bash
|
107
144
|
# Build the docker container
|
108
145
|
bundle exec rake docker:build
|
109
146
|
|
147
|
+
# Alternative: Build with disabled cache
|
148
|
+
bundle exec rake 'docker:build[false]'
|
149
|
+
|
150
|
+
# Build image with version tag
|
151
|
+
bundle exec rake 'docker:build[false, 0.1.0]'
|
152
|
+
|
110
153
|
# Run the whole test suite in "docker"-container
|
111
154
|
RUN_IN_DOCKER=1 bin/test
|
112
155
|
|
113
156
|
# Run only selected scenario
|
114
157
|
RUN_IN_DOCKER=1 bin/test cucumber features/steps/command/shell.feature:14
|
115
|
-
|
158
|
+
```
|
116
159
|
|
117
|
-
|
160
|
+
### Installing your own gems used for development
|
118
161
|
|
119
|
-
A `Gemfile.local
|
162
|
+
A `Gemfile.local` file can be used, to have your own gems installed to support
|
120
163
|
your normal development workflow.
|
121
164
|
|
122
|
-
Example
|
165
|
+
Example `Gemfile.local`:
|
123
166
|
|
124
|
-
|
167
|
+
```ruby
|
125
168
|
gem 'pry'
|
126
169
|
gem 'pry-byebug'
|
127
170
|
gem 'byebug'
|
128
|
-
|
171
|
+
```
|
172
|
+
|
173
|
+
### Running a developer console
|
174
|
+
|
175
|
+
The interactive Aruba console starts an IRB console with Aruba's API loaded:
|
176
|
+
|
177
|
+
```bash
|
178
|
+
bin/console
|
179
|
+
```
|
180
|
+
|
181
|
+
### Linting
|
182
|
+
|
183
|
+
Aruba's Rakefile provides the following linting tasks
|
184
|
+
|
185
|
+
```bash
|
186
|
+
bundle exec rake lint # Run all linters
|
187
|
+
bundle exec rake lint:coding_guidelines # Lint our code with "rubocop"
|
188
|
+
bundle exec rake lint:licenses # Check for relevant licenses in project
|
189
|
+
bundle exec rake lint:travis # Lint our .travis.yml
|
190
|
+
```
|
191
|
+
|
192
|
+
### Building and installing your local Aruba version
|
193
|
+
|
194
|
+
You can use the following Rake tasks to build and install your work-in-progress locally:
|
195
|
+
|
196
|
+
```bash
|
197
|
+
# Build your copy
|
198
|
+
bundle exec rake rubygem:build
|
199
|
+
# Build and install your copy
|
200
|
+
bundle exec rake rubygem:install
|
201
|
+
# Build and install your copy without network access
|
202
|
+
bundle exec rake rubygem:install:local
|
203
|
+
```
|
129
204
|
|
130
205
|
## Getting started as a "Maintainer"
|
131
206
|
|
132
207
|
### Release Process
|
133
208
|
|
134
209
|
* Bump the version number in `lib/aruba/version.rb`
|
135
|
-
* Make sure `
|
136
|
-
|
137
|
-
*
|
210
|
+
* Make sure [`CHANGELOG.md`] is updated with the upcoming version number, and has
|
211
|
+
entries for all fixes.
|
212
|
+
* No need to add a [`CHANGELOG.md`] header at this point - this should be done
|
213
|
+
later, when a new change is made.
|
214
|
+
* If a major version is released, update the `still` branch, which points to
|
215
|
+
the "old" major version.
|
138
216
|
|
139
|
-
Now release it
|
217
|
+
Now release it:
|
140
218
|
|
141
|
-
|
219
|
+
```bash
|
142
220
|
# update dependencies
|
143
221
|
bundle update
|
144
222
|
|
@@ -150,24 +228,47 @@ git commit -m "Version bump"
|
|
150
228
|
bin/release
|
151
229
|
|
152
230
|
# If it's a major relase:
|
153
|
-
# Merge changes back to have
|
231
|
+
# Merge changes back to have correct documentation
|
154
232
|
git checkout still
|
155
233
|
git merge master
|
156
234
|
git push
|
157
|
-
|
235
|
+
```
|
236
|
+
|
237
|
+
Now send a PR to [cucumber/website] adding an article
|
238
|
+
with details of the new release. Then merge it - an aruba maintainer should
|
239
|
+
normally be allowed to merge PRs on [cucumber/website]. A copy of an old
|
240
|
+
announcement can be used as basis for the new article.
|
158
241
|
|
159
|
-
Now send
|
242
|
+
Now, send an email with the link to the article to `cukes@googlegroups.com`.
|
160
243
|
|
161
244
|
### Gaining Release Karma
|
162
245
|
|
163
|
-
To become a release manager, create a pull request adding your name to the list
|
246
|
+
To become a release manager, create a pull request adding your name to the list
|
247
|
+
below, and include your Rubygems email address in the ticket. One of the
|
248
|
+
existing Release managers will then add you.
|
164
249
|
|
165
250
|
Current release managers:
|
166
|
-
* Aslak Hellesøy ([@aslakhellesoy](
|
167
|
-
*
|
168
|
-
*
|
169
|
-
* Matt Wynne ([@mattwynne](http://github.com/mattwynne))
|
251
|
+
* Aslak Hellesøy ([@aslakhellesoy](https://github.com/aslakhellesoy))
|
252
|
+
* Matt Wynne ([@mattwynne](https://github.com/mattwynne))
|
253
|
+
* Matijs van Zuijlen ([@mvz](https://github.com/mvz))
|
170
254
|
|
171
255
|
To grant release karma, issue the following command:
|
172
256
|
|
173
|
-
|
257
|
+
```bash
|
258
|
+
gem owner aruba --add <NEW OWNER RUBYGEMS EMAIL>
|
259
|
+
```
|
260
|
+
|
261
|
+
[`CHANGELOG.md`]: CHANGELOG.md
|
262
|
+
[CHANGELOG.md]: CHANGELOG.md
|
263
|
+
|
264
|
+
[`rubocop`]: https://github.com/bbatsov/rubocop
|
265
|
+
[Ruby Community Style Guide]: https://github.com/bbatsov/ruby-style-guide
|
266
|
+
[.rubocop.yml]: .rubocop.yml
|
267
|
+
[features/]: features/
|
268
|
+
|
269
|
+
[Bundler]: https://bundler.io/
|
270
|
+
|
271
|
+
[Docker]: https://docs.docker.com/
|
272
|
+
[YARD]: http://yardoc.org/
|
273
|
+
["How to Write a Git Commit Message"]: http://chris.beams.io/posts/git-commit/
|
274
|
+
[cucumber/website]: https://github.com/cucumber/website
|
data/Gemfile
CHANGED
@@ -8,71 +8,56 @@ load File.expand_path('../Gemfile.local', __FILE__) if File.file? File.expand_pa
|
|
8
8
|
|
9
9
|
# Debug aruba
|
10
10
|
group :debug do
|
11
|
-
|
12
|
-
|
11
|
+
unless RUBY_PLATFORM.include?('java')
|
12
|
+
if RUBY_VERSION >= '2.3.0'
|
13
|
+
gem 'byebug', '~> 11.0'
|
14
|
+
else
|
15
|
+
gem 'byebug', '~> 10.0'
|
16
|
+
end
|
17
|
+
|
13
18
|
gem 'pry-byebug', '~> 3.4'
|
14
19
|
end
|
15
20
|
|
16
|
-
|
17
|
-
|
18
|
-
gem 'pry-debugger', '~> 0.2.3'
|
19
|
-
end
|
21
|
+
gem 'pry-doc', '~> 1.0.0'
|
22
|
+
end
|
20
23
|
|
21
|
-
|
24
|
+
# Tools to run during development
|
25
|
+
group :development do
|
26
|
+
# Needed for lint:yard:junk task
|
27
|
+
if RUBY_VERSION >= '2.3.0'
|
28
|
+
gem 'yard-junk', '~> 0'
|
29
|
+
end
|
22
30
|
end
|
23
31
|
|
24
32
|
group :development, :test do
|
25
33
|
# we use this to demonstrate interactive debugging within our feature tests
|
26
|
-
|
27
|
-
gem 'pry', '~> 0.10.1'
|
28
|
-
else
|
29
|
-
gem 'pry', '~>0.9.12'
|
30
|
-
end
|
31
|
-
|
32
|
-
# Run development tasks
|
33
|
-
gem 'rake', '~> 10.4.2'
|
34
|
+
gem 'pry', '~> 0.12.2'
|
34
35
|
|
35
|
-
|
36
|
-
|
37
|
-
gem 'travis-yaml'
|
36
|
+
# Run development and test tasks
|
37
|
+
gem 'rake', '~> 12.3'
|
38
38
|
|
39
|
-
|
40
|
-
|
41
|
-
gem 'kramdown', '~> 1.14'
|
42
|
-
end
|
39
|
+
# Lint travis yaml
|
40
|
+
gem 'travis-yaml'
|
43
41
|
|
44
42
|
# Code Coverage
|
45
43
|
gem 'simplecov', '~> 0.10'
|
46
44
|
|
45
|
+
# API docs generation
|
46
|
+
gem 'yard', '~>0.9.9'
|
47
|
+
|
47
48
|
# Test api
|
49
|
+
gem 'fuubar', '~> 2.2'
|
48
50
|
gem 'rspec', '~> 3.4'
|
49
|
-
gem 'fuubar', '~> 2.2.0'
|
50
|
-
|
51
|
-
# using platform for this makes bundler complain about the same gem given
|
52
|
-
# twice
|
53
|
-
gem 'cucumber', '~> 2.0'
|
54
51
|
|
55
52
|
# Make aruba compliant to ruby community guide
|
56
|
-
gem 'rubocop', '~> 0.
|
57
|
-
|
58
|
-
# gem 'cucumber-pro', '~> 0.0'
|
53
|
+
gem 'rubocop', '~> 0.64.0'
|
59
54
|
|
60
55
|
# License compliance
|
61
|
-
if RUBY_VERSION
|
62
|
-
gem 'license_finder', '~>
|
63
|
-
else
|
64
|
-
gem 'license_finder', '~> 3.0'
|
56
|
+
if RUBY_VERSION >= '2.3'
|
57
|
+
gem 'license_finder', '~> 5.0'
|
65
58
|
end
|
66
59
|
|
67
|
-
|
68
|
-
# gem 'relish', '~> 0.7.1'
|
69
|
-
|
70
|
-
gem 'minitest', '~> 5.8.0'
|
71
|
-
|
72
|
-
gem 'json', '~>2.1'
|
73
|
-
end
|
60
|
+
gem 'minitest', '~> 5.8'
|
74
61
|
|
75
|
-
|
76
|
-
gem 'rubysl', '~> 2.0'
|
77
|
-
gem 'rubinius-developer_tools'
|
62
|
+
gem 'json', '~> 2.1'
|
78
63
|
end
|
data/README.md
CHANGED
@@ -1,37 +1,60 @@
|
|
1
1
|
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/cucumber/aruba/master/LICENSE)
|
2
2
|
[![Docs](https://img.shields.io/badge/cucumber.pro-aruba-3d10af.svg)](https://app.cucumber.pro/projects/aruba)
|
3
3
|
[![Gem Version](https://badge.fury.io/rb/aruba.svg)](http://badge.fury.io/rb/aruba)
|
4
|
-
[![Dependency Status](https://gemnasium.com/cucumber/aruba.svg)](https://gemnasium.com/cucumber/aruba)
|
5
4
|
[![Code Climate](https://codeclimate.com/github/cucumber/aruba.svg)](https://codeclimate.com/github/cucumber/aruba)
|
6
5
|
[![Support](https://img.shields.io/badge/cucumber-support-orange.svg)](https://cucumber.io/support)
|
7
6
|
|
8
|
-
|
7
|
+
[![Build Status for "master" on Linux/Mac OS](https://travis-ci.org/cucumber/aruba.svg?branch=master)](https://travis-ci.org/cucumber/aruba)
|
8
|
+
[![Build status for "master" on Windows](https://ci.appveyor.com/api/projects/status/jfo2tkqhnrqqcivl/branch/master?svg=true&passingText=master%20windows%20passing&failingText=master%20windows%20failing&pendingText=master%20windows%20pending)](https://ci.appveyor.com/project/cucumberbdd/aruba/branch/master)
|
9
|
+
|
10
|
+
**This is the [latest](https://github.com/cucumber/aruba/blob/master/README.md) version of our README.md (Branch: "[master](https://github.com/cucumber/aruba/tree/master)"). There is also [the README of the latest released version of "aruba"](https://github.com/cucumber/aruba/blob/still/README.md) (Branch: "[still](https://github.com/cucumber/aruba/tree/still)").**
|
9
11
|
|
10
12
|
## Install
|
11
13
|
|
12
14
|
Add this line to your application's `Gemfile`:
|
13
15
|
|
14
|
-
~~~
|
16
|
+
~~~ruby
|
15
17
|
gem 'aruba'
|
16
18
|
~~~
|
17
19
|
|
18
20
|
And then execute:
|
19
21
|
|
20
|
-
~~~
|
21
|
-
|
22
|
+
~~~bash
|
23
|
+
bundle
|
22
24
|
~~~
|
23
25
|
|
24
26
|
Or install it yourself as:
|
25
27
|
|
26
|
-
~~~
|
27
|
-
|
28
|
+
~~~bash
|
29
|
+
gem install aruba
|
28
30
|
~~~
|
29
31
|
|
30
32
|
## Usage
|
31
33
|
|
32
34
|
### As a user getting started with "aruba"
|
33
35
|
|
34
|
-
Our most current documentation to get started with `aruba` can be found on [![See our documentation on Cucumber Pro](https://github.com/cucumber-ltd/brand/raw/master/images/png/notm/cucumber-pro-black/cucumber-pro-black-32.png)](https://app.cucumber.pro/projects/aruba). It is generated from our feature files describing the use of `aruba`.
|
36
|
+
Our most current documentation to get started with `aruba` as a user can be found on [![See our documentation on Cucumber Pro](https://github.com/cucumber-ltd/brand/raw/master/images/png/notm/cucumber-pro-black/cucumber-pro-black-32.png)](https://app.cucumber.pro/projects/aruba). It is generated from our feature files describing the use of `aruba`.
|
37
|
+
|
38
|
+
### As a user getting started with a ruby testing framework
|
39
|
+
|
40
|
+
* **Cucumber**:
|
41
|
+
|
42
|
+
If you're new to the "Cucumber" ecosystem, it's worth to visit
|
43
|
+
[the project's documentation site](https://cucumber.io/docs). This also includes
|
44
|
+
information about how to write feature files in "Gherkin".
|
45
|
+
|
46
|
+
* **RSpec**:
|
47
|
+
|
48
|
+
If you want to use "aruba" with "RSpec" and you need some information about how to use "RSpec", please visit [their website](http://rspec.info/documentation/).
|
49
|
+
|
50
|
+
* **minitest**:
|
51
|
+
|
52
|
+
The documentation for "minitest" can be found [here](http://docs.seattlerb.org/minitest/).
|
53
|
+
|
54
|
+
### As a developer getting started with "aruba"
|
55
|
+
|
56
|
+
A full documentation of the API for developers can be found on
|
57
|
+
[RubyDoc](http://www.rubydoc.info/github/cucumber/aruba/master/frames).
|
35
58
|
|
36
59
|
## Support
|
37
60
|
|
@@ -43,7 +66,7 @@ For support, please have a look at the ["support website"](https://cucumber.io/s
|
|
43
66
|
|
44
67
|
Currently, this gem is mainly maintained by this group of people:
|
45
68
|
|
46
|
-
* [@
|
69
|
+
* [@mvz](https://github.com/mvz)
|
47
70
|
|
48
71
|
## Release Policy
|
49
72
|
|
@@ -57,9 +80,16 @@ For an up-to-date list of all supported Ruby versions, please see our [`.travis.
|
|
57
80
|
|
58
81
|
Please see the [CONTRIBUTING](CONTRIBUTING.md) file.
|
59
82
|
|
83
|
+
## Code branches
|
84
|
+
|
85
|
+
We use two branches for development: "master" and "still". The "master" branch
|
86
|
+
contains the code of the current major version. The "still" branch is used for the
|
87
|
+
old major version. New features are only added to "master". The "still" branch is
|
88
|
+
still maintained, but only get fixes for major bugs. The "still" branch should be considered as experimental, as we need to find out how much work it is to maintain two branches of code.
|
89
|
+
|
60
90
|
## Build Status
|
61
91
|
|
62
92
|
|Version|Linux / OS X|Windows|
|
63
93
|
| ------ | ------ | ------ |
|
64
|
-
| master | [![Build Status](https://travis-ci.org/cucumber/aruba.svg?branch=master)](https://travis-ci.org/cucumber/aruba) | [![Build status](https://ci.appveyor.com/api/projects/status/jfo2tkqhnrqqcivl?svg=true)](https://ci.appveyor.com/project/cucumberbdd/aruba/branch/master)|
|
65
|
-
| still | [![Build Status](https://travis-ci.org/cucumber/aruba.svg?branch=still)](https://travis-ci.org/cucumber/aruba) | [![Build status](https://ci.appveyor.com/api/projects/status/jfo2tkqhnrqqcivl?svg=true)](https://ci.appveyor.com/project/cucumberbdd/aruba/branch/still)
|
94
|
+
| master | [![Build Status](https://travis-ci.org/cucumber/aruba.svg?branch=master)](https://travis-ci.org/cucumber/aruba) | [![Build status](https://ci.appveyor.com/api/projects/status/jfo2tkqhnrqqcivl/branch/master?svg=true&passingText=master%20windows%20passing&failingText=master%20windows%20failing&pendingText==master%20windows%20pending)](https://ci.appveyor.com/project/cucumberbdd/aruba/branch/master)|
|
95
|
+
| still | [![Build Status](https://travis-ci.org/cucumber/aruba.svg?branch=still)](https://travis-ci.org/cucumber/aruba) | [![Build status](https://ci.appveyor.com/api/projects/status/jfo2tkqhnrqqcivl/branch/still?svg=true&passingText=still%20windows%20passing&failingText=still%20windows%20failing&pendingText=master%20windows%20pending)](https://ci.appveyor.com/project/cucumberbdd/aruba/branch/still)
|