aruba 0.4.11 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +2 -0
- data/History.md +7 -0
- data/README.md +39 -5
- data/aruba.gemspec +4 -3
- data/features/file_system_commands.feature +14 -0
- data/features/output.feature +19 -0
- data/lib/aruba/api.rb +25 -1
- data/lib/aruba/cucumber.rb +23 -1
- data/lib/aruba/jruby.rb +6 -4
- data/lib/aruba/process.rb +7 -0
- data/spec/aruba/api_spec.rb +91 -1
- data/spec/aruba/jruby_spec.rb +34 -0
- data/spec/spec_helper.rb +35 -0
- metadata +197 -82
data/.travis.yml
CHANGED
data/History.md
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
## [v0.5](https://github.com/cucumber/aruba/compare/v0.4.10..v0.5)
|
2
|
+
* Add #with_file_content to the DSL (#110 Pavel Argentov)
|
3
|
+
* Make JRuby performance tweaks optional (#102 Taylor Carpenter, #125 Andy Lindeman)
|
4
|
+
* Add assert_partial_output_interactive so you can peek at the output from a running process (#104 Taylor Carpenter)
|
5
|
+
* Add assert_not_matching_output (#111 Pavel Argentov)
|
6
|
+
* Add remove_dir (#121 Piotr Niełacny)
|
7
|
+
|
1
8
|
## [v0.4.11](https://github.com/cucumber/aruba/compare/v0.4.10...v0.4.11)
|
2
9
|
* Fix duplicated output (#91 Robert Wahler, Matt Wynne)
|
3
10
|
* Fix Gemspec format (#101 Matt Wynne)
|
data/README.md
CHANGED
@@ -36,10 +36,13 @@ If you want to change this behaviour put this into your `features/support/env.rb
|
|
36
36
|
|
37
37
|
### Modify the PATH
|
38
38
|
|
39
|
-
|
40
|
-
|
39
|
+
Aruba will automatically add the `bin` directory of your project to the `PATH` environment variable for
|
40
|
+
the duration of each Cucumber scenario. So if you're developing a Ruby gem with a binary command, you
|
41
|
+
can test those commands as though the gem were already installed.
|
41
42
|
|
42
|
-
|
43
|
+
If you need other directories to be added to the `PATH`, you can put the following in `features/support/env.rb`:
|
44
|
+
|
45
|
+
ENV['PATH'] = "/my/special/bin/path')}#{File::PATH_SEPARATOR}#{ENV['PATH']}"
|
43
46
|
|
44
47
|
### Increasing timeouts
|
45
48
|
|
@@ -79,10 +82,10 @@ To get more information on what Aruba is doing, use these tags:
|
|
79
82
|
|
80
83
|
You can hook into Aruba's lifecycle just before it runs a command:
|
81
84
|
|
82
|
-
```
|
85
|
+
```ruby
|
83
86
|
Aruba.configure do |config|
|
84
87
|
config.before_cmd do |cmd|
|
85
|
-
puts "About to run '#{cmd}'
|
88
|
+
puts "About to run '#{cmd}'"
|
86
89
|
end
|
87
90
|
end
|
88
91
|
```
|
@@ -98,6 +101,37 @@ make assertions about coloured output. Still, there might be cases where you wan
|
|
98
101
|
scenario with `@ansi`. Alternatively you can add your own Before
|
99
102
|
hook that sets `@aruba_keep_ansi = true`.
|
100
103
|
|
104
|
+
### JRuby Tips
|
105
|
+
|
106
|
+
Improve startup time by disabling JIT and forcing client JVM mode. This can be accomplished by adding
|
107
|
+
|
108
|
+
require 'aruba/java'
|
109
|
+
|
110
|
+
or setting a hook like this example:
|
111
|
+
|
112
|
+
```
|
113
|
+
Aruba.configure do |config|
|
114
|
+
config.before_cmd do |cmd|
|
115
|
+
set_env('JRUBY_OPTS', "-X-C #{ENV['JRUBY_OPTS']}") # disable JIT since these processes are so short lived
|
116
|
+
set_env('JAVA_OPTS', "-d32 #{ENV['JAVA_OPTS']}") # force jRuby to use client JVM for faster startup times
|
117
|
+
end
|
118
|
+
end if RUBY_PLATFORM == 'java'
|
119
|
+
```
|
120
|
+
|
121
|
+
*Note* - no conflict resolution on the JAVA/JRuby environment options is
|
122
|
+
done; only merging. For more complex settings please manually set the
|
123
|
+
environment variables in the hook or externally.
|
124
|
+
|
125
|
+
A larger process timeout for java may be needed
|
126
|
+
|
127
|
+
```
|
128
|
+
Before do
|
129
|
+
@aruba_timeout_seconds = RUBY_PLATFORM == 'java' ? 60 : 10
|
130
|
+
end
|
131
|
+
```
|
132
|
+
|
133
|
+
Refer to http://blog.headius.com/2010/03/jruby-startup-time-tips.html for other tips on startup time.
|
134
|
+
|
101
135
|
## Reporting
|
102
136
|
|
103
137
|
*Important* - you need [Pygments](http://pygments.org/) installed to use this feature.
|
data/aruba.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = 'aruba'
|
5
|
-
s.version = '0.
|
5
|
+
s.version = '0.5.0'
|
6
6
|
s.authors = ["Aslak Hellesøy", "David Chelimsky", "Mike Sassak", "Matt Wynne"]
|
7
7
|
s.description = 'CLI Steps for Cucumber, hand-crafted for you in Aruba'
|
8
8
|
s.summary = "aruba-#{s.version}"
|
@@ -10,12 +10,13 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.homepage = 'http://github.com/cucumber/aruba'
|
11
11
|
|
12
12
|
s.add_runtime_dependency 'cucumber', '>= 1.1.1'
|
13
|
-
s.add_runtime_dependency 'childprocess', '
|
13
|
+
s.add_runtime_dependency 'childprocess', '= 0.2.3'
|
14
14
|
s.add_runtime_dependency 'ffi', '>= 1.0.11'
|
15
|
-
s.add_runtime_dependency 'rspec', '>= 2.7.0'
|
15
|
+
s.add_runtime_dependency 'rspec-expectations', '>= 2.7.0'
|
16
16
|
s.add_development_dependency 'bcat', '>= 0.6.1'
|
17
17
|
s.add_development_dependency 'rdiscount', '>= 1.6.8'
|
18
18
|
s.add_development_dependency 'rake', '>= 0.9.2'
|
19
|
+
s.add_development_dependency 'rspec', '>= 2.7.0'
|
19
20
|
|
20
21
|
s.rubygems_version = ">= 1.6.1"
|
21
22
|
s.files = `git ls-files`.split("\n")
|
@@ -143,6 +143,20 @@ Feature: file system commands
|
|
143
143
|
Then the file "foo" should match /hel.o world/
|
144
144
|
And the file "foo" should not match /HELLO WORLD/
|
145
145
|
|
146
|
+
Scenario: Check file contents with docstring
|
147
|
+
Given a file named "foo" with:
|
148
|
+
"""
|
149
|
+
foo
|
150
|
+
bar
|
151
|
+
baz
|
152
|
+
foobar
|
153
|
+
"""
|
154
|
+
Then the file "foo" should contain:
|
155
|
+
"""
|
156
|
+
bar
|
157
|
+
baz
|
158
|
+
"""
|
159
|
+
|
146
160
|
Scenario: Remove file
|
147
161
|
Given a file named "foo" with:
|
148
162
|
"""
|
data/features/output.feature
CHANGED
@@ -95,6 +95,25 @@ Feature: Output
|
|
95
95
|
important line
|
96
96
|
"""
|
97
97
|
|
98
|
+
@announce
|
99
|
+
Scenario: Negative matching of one-line output with regex
|
100
|
+
When I run `ruby --version`
|
101
|
+
Then the output should contain "ruby"
|
102
|
+
And the output should not match /ruby is a better perl$/
|
103
|
+
|
104
|
+
@announce
|
105
|
+
@posix
|
106
|
+
Scenario: Negative matching of multiline output with regex
|
107
|
+
When I run `ruby -e 'puts "hello\nworld\nextra line1\nextra line2\nimportant line"'`
|
108
|
+
Then the output should not match:
|
109
|
+
"""
|
110
|
+
ruby
|
111
|
+
is
|
112
|
+
a
|
113
|
+
.*
|
114
|
+
perl
|
115
|
+
"""
|
116
|
+
|
98
117
|
@announce
|
99
118
|
@posix
|
100
119
|
Scenario: Match passing exit status and partial output
|
data/lib/aruba/api.rb
CHANGED
@@ -3,7 +3,6 @@ require 'rbconfig'
|
|
3
3
|
require 'rspec/expectations'
|
4
4
|
require 'aruba/process'
|
5
5
|
require 'aruba/config'
|
6
|
-
require 'aruba/jruby' if RUBY_PLATFORM == 'java'
|
7
6
|
|
8
7
|
module Aruba
|
9
8
|
module Api
|
@@ -74,6 +73,12 @@ module Aruba
|
|
74
73
|
end
|
75
74
|
end
|
76
75
|
|
76
|
+
def remove_dir(directory_name)
|
77
|
+
in_current_dir do
|
78
|
+
FileUtils.rmdir(directory_name)
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
77
82
|
def check_file_presence(paths, expect_presence)
|
78
83
|
prep_for_fs_check do
|
79
84
|
paths.each do |path|
|
@@ -94,6 +99,13 @@ module Aruba
|
|
94
99
|
end
|
95
100
|
end
|
96
101
|
|
102
|
+
def with_file_content(file, &block)
|
103
|
+
prep_for_fs_check do
|
104
|
+
content = IO.read(file)
|
105
|
+
yield(content)
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
97
109
|
def check_file_content(file, partial_content, expect_match)
|
98
110
|
regexp = regexp(partial_content)
|
99
111
|
prep_for_fs_check do
|
@@ -180,6 +192,10 @@ module Aruba
|
|
180
192
|
unescape(actual).should =~ /#{unescape(expected)}/m
|
181
193
|
end
|
182
194
|
|
195
|
+
def assert_not_matching_output(expected, actual)
|
196
|
+
unescape(actual).should_not =~ /#{unescape(expected)}/m
|
197
|
+
end
|
198
|
+
|
183
199
|
def assert_no_partial_output(unexpected, actual)
|
184
200
|
if Regexp === unexpected
|
185
201
|
unescape(actual).should_not =~ unexpected
|
@@ -188,6 +204,10 @@ module Aruba
|
|
188
204
|
end
|
189
205
|
end
|
190
206
|
|
207
|
+
def assert_partial_output_interactive(expected)
|
208
|
+
unescape(_read_interactive).include?(unescape(expected)) ? true : false
|
209
|
+
end
|
210
|
+
|
191
211
|
def assert_passing_with(expected)
|
192
212
|
assert_exit_status_and_partial_output(true, expected)
|
193
213
|
end
|
@@ -310,6 +330,10 @@ module Aruba
|
|
310
330
|
@interactive.stdin.write(input)
|
311
331
|
end
|
312
332
|
|
333
|
+
def _read_interactive
|
334
|
+
@interactive.read_stdout(@aruba_keep_ansi)
|
335
|
+
end
|
336
|
+
|
313
337
|
def _ensure_newline(str)
|
314
338
|
str.chomp << "\n"
|
315
339
|
end
|
data/lib/aruba/cucumber.rb
CHANGED
@@ -79,6 +79,15 @@ When /^I type "([^"]*)"$/ do |input|
|
|
79
79
|
type(input)
|
80
80
|
end
|
81
81
|
|
82
|
+
When /^I wait for (?:output|stdout) to contain "([^"]*)"$/ do |expected|
|
83
|
+
Timeout::timeout(exit_timeout) do
|
84
|
+
loop do
|
85
|
+
break if assert_partial_output_interactive(expected)
|
86
|
+
sleep 0.1
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
|
82
91
|
Then /^the output should contain "([^"]*)"$/ do |expected|
|
83
92
|
assert_partial_output(expected, all_output)
|
84
93
|
end
|
@@ -118,11 +127,20 @@ end
|
|
118
127
|
Then /^the output should match \/([^\/]*)\/$/ do |expected|
|
119
128
|
assert_matching_output(expected, all_output)
|
120
129
|
end
|
121
|
-
|
130
|
+
|
122
131
|
Then /^the output should match:$/ do |expected|
|
123
132
|
assert_matching_output(expected, all_output)
|
124
133
|
end
|
125
134
|
|
135
|
+
# The previous two steps antagonists
|
136
|
+
Then /^the output should not match \/([^\/]*)\/$/ do |expected|
|
137
|
+
assert_not_matching_output(expected, all_output)
|
138
|
+
end
|
139
|
+
|
140
|
+
Then /^the output should not match:$/ do |expected|
|
141
|
+
assert_not_matching_output(expected, all_output)
|
142
|
+
end
|
143
|
+
|
126
144
|
Then /^the exit status should be (\d+)$/ do |exit_status|
|
127
145
|
assert_exit_status(exit_status.to_i)
|
128
146
|
end
|
@@ -248,6 +266,10 @@ Then /^the file "([^"]*)" should not contain "([^"]*)"$/ do |file, partial_conte
|
|
248
266
|
check_file_content(file, partial_content, false)
|
249
267
|
end
|
250
268
|
|
269
|
+
Then /^the file "([^"]*)" should contain:$/ do |file, partial_content|
|
270
|
+
check_file_content(file, partial_content, true)
|
271
|
+
end
|
272
|
+
|
251
273
|
Then /^the file "([^"]*)" should contain exactly:$/ do |file, exact_content|
|
252
274
|
check_exact_file_content(file, exact_content)
|
253
275
|
end
|
data/lib/aruba/jruby.rb
CHANGED
@@ -1,7 +1,9 @@
|
|
1
|
+
# ideas taken from: http://blog.headius.com/2010/03/jruby-startup-time-tips.html
|
1
2
|
Aruba.configure do |config|
|
2
3
|
config.before_cmd do
|
3
|
-
#
|
4
|
-
set_env('JRUBY_OPTS',
|
5
|
-
|
4
|
+
# disable JIT since these processes are so short lived
|
5
|
+
set_env('JRUBY_OPTS', "-X-C #{ENV['JRUBY_OPTS']}")
|
6
|
+
# force jRuby to use client JVM for faster startup times
|
7
|
+
set_env('JAVA_OPTS', "-d32 #{ENV['JAVA_OPTS']}") if RbConfig::CONFIG['host_os'] =~ /solaris|sunos/i
|
6
8
|
end
|
7
|
-
end
|
9
|
+
end if RUBY_PLATFORM == 'java'
|
data/lib/aruba/process.rb
CHANGED
@@ -48,6 +48,13 @@ module Aruba
|
|
48
48
|
end
|
49
49
|
end
|
50
50
|
|
51
|
+
def read_stdout(keep_ansi)
|
52
|
+
wait_for_io do
|
53
|
+
@process.io.stdout.flush
|
54
|
+
content = filter_ansi(open(@out.path).read, keep_ansi)
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
51
58
|
def stop(reader, keep_ansi)
|
52
59
|
return unless @process
|
53
60
|
unless @process.exited?
|
data/spec/aruba/api_spec.rb
CHANGED
@@ -15,6 +15,14 @@ describe Aruba::Api do
|
|
15
15
|
end
|
16
16
|
}
|
17
17
|
@aruba = klass.new
|
18
|
+
|
19
|
+
@file_name = "test.txt"
|
20
|
+
@file_size = 256
|
21
|
+
@file_path = File.join(@aruba.current_dir, @file_name)
|
22
|
+
@directory_name = 'test_dir'
|
23
|
+
@directory_path = File.join(@aruba.current_dir, @directory_name)
|
24
|
+
|
25
|
+
Dir.mkdir(@directory_path) if File.exist?(@directory_path)
|
18
26
|
end
|
19
27
|
|
20
28
|
describe 'current_dir' do
|
@@ -23,6 +31,40 @@ describe Aruba::Api do
|
|
23
31
|
end
|
24
32
|
end
|
25
33
|
|
34
|
+
describe 'directories' do
|
35
|
+
context 'delete directory' do
|
36
|
+
it 'should delete directory' do
|
37
|
+
@aruba.remove_dir(@directory_name)
|
38
|
+
File.exist?(@directory_path).should == false
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
describe 'files' do
|
44
|
+
context 'fixed size' do
|
45
|
+
it "should write a fixed sized file" do
|
46
|
+
@aruba.write_fixed_size_file(@file_name, @file_size)
|
47
|
+
File.exist?(@file_path).should == true
|
48
|
+
File.size(@file_path).should == @file_size
|
49
|
+
end
|
50
|
+
|
51
|
+
it "should check an existing file size" do
|
52
|
+
@aruba.write_fixed_size_file(@file_name, @file_size)
|
53
|
+
@aruba.check_file_size([[@file_name, @file_size]])
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should check an existing file size and fail" do
|
57
|
+
@aruba.write_fixed_size_file(@file_name, @file_size)
|
58
|
+
lambda { @aruba.check_file_size([[@file_name, @file_size + 1]]) }.should raise_error
|
59
|
+
end
|
60
|
+
|
61
|
+
it "should delete file" do
|
62
|
+
@aruba.remove_file(@file_name)
|
63
|
+
File.exist?(@file_path).should == false
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
26
68
|
describe 'tags' do
|
27
69
|
describe '@announce_stdout' do
|
28
70
|
|
@@ -44,6 +86,54 @@ describe Aruba::Api do
|
|
44
86
|
end
|
45
87
|
end
|
46
88
|
end
|
89
|
+
end
|
90
|
+
|
91
|
+
describe "#with_file_content" do
|
92
|
+
before :each do
|
93
|
+
@aruba.write_file(@file_name, "foo bar baz")
|
94
|
+
end
|
95
|
+
|
96
|
+
it "checks the given file's full content against the expectations in the passed block" do
|
97
|
+
@aruba.with_file_content @file_name do |full_content|
|
98
|
+
full_content.should == "foo bar baz"
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
context "checking the file's content against the expectations in the block" do
|
103
|
+
it "is successful when the inner expectations match" do
|
104
|
+
expect do
|
105
|
+
@aruba.with_file_content @file_name do |full_content|
|
106
|
+
full_content.should match /foo/
|
107
|
+
full_content.should_not match /zoo/
|
108
|
+
end
|
109
|
+
end . not_to raise_error RSpec::Expectations::ExpectationNotMetError
|
110
|
+
end
|
111
|
+
|
112
|
+
it "raises RSpec::Expectations::ExpectationNotMetError when the inner expectations don't match" do
|
113
|
+
expect do
|
114
|
+
@aruba.with_file_content @file_name do |full_content|
|
115
|
+
full_content.should match /zoo/
|
116
|
+
full_content.should_not match /foo/
|
117
|
+
end
|
118
|
+
end . to raise_error RSpec::Expectations::ExpectationNotMetError
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
122
|
+
end #with_file_content
|
123
|
+
|
124
|
+
describe "#assert_not_matching_output" do
|
125
|
+
before :each do
|
126
|
+
@aruba.run_simple("echo foo", false)
|
127
|
+
end
|
47
128
|
|
129
|
+
it "passes when the output doesn't match a regexp" do
|
130
|
+
@aruba.assert_not_matching_output "bar", @aruba.all_output
|
131
|
+
end
|
132
|
+
it "fails when the output does match a regexp" do
|
133
|
+
expect do
|
134
|
+
@aruba.assert_not_matching_output "foo", @aruba.all_output
|
135
|
+
end . to raise_error RSpec::Expectations::ExpectationNotMetError
|
136
|
+
end
|
48
137
|
end
|
49
|
-
|
138
|
+
|
139
|
+
end # Aruba::Api
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'aruba/config'
|
3
|
+
require 'aruba/api'
|
4
|
+
include Aruba::Api
|
5
|
+
|
6
|
+
describe "Aruba JRuby Startup Helper" do
|
7
|
+
before(:all) do
|
8
|
+
@fake_env = ENV.clone
|
9
|
+
end
|
10
|
+
before(:each) do
|
11
|
+
Aruba.config = Aruba::Config.new
|
12
|
+
@fake_env['JRUBY_OPTS'] = "--1.9"
|
13
|
+
@fake_env['JAVA_OPTS'] = "-Xdebug"
|
14
|
+
end
|
15
|
+
|
16
|
+
it 'configuration does not load when RUBY_PLATFORM is not java' do
|
17
|
+
with_constants :ENV => @fake_env, :RUBY_PLATFORM => 'x86_64-chocolate' do
|
18
|
+
load 'aruba/jruby.rb'
|
19
|
+
Aruba.config.hooks.execute :before_cmd, self
|
20
|
+
ENV['JRUBY_OPTS'].should == "--1.9"
|
21
|
+
ENV['JAVA_OPTS'].should == "-Xdebug"
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
it 'configuration loads for java and merges existing environment variables' do
|
26
|
+
with_constants :ENV => @fake_env, :RUBY_PLATFORM => 'java' do
|
27
|
+
RbConfig::CONFIG.stub(:[] => 'solaris')
|
28
|
+
load 'aruba/jruby.rb'
|
29
|
+
Aruba.config.hooks.execute :before_cmd, self
|
30
|
+
ENV['JRUBY_OPTS'].should == "-X-C --1.9"
|
31
|
+
ENV['JAVA_OPTS'].should == "-d32 -Xdebug"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,8 +1,43 @@
|
|
1
1
|
require 'rspec/core'
|
2
2
|
require 'aruba/api'
|
3
3
|
|
4
|
+
module ManipulatesConstants
|
5
|
+
# http://digitaldumptruck.jotabout.com/?p=551
|
6
|
+
def with_constants(constants, &block)
|
7
|
+
saved_constants = {}
|
8
|
+
constants.each do |constant, val|
|
9
|
+
saved_constants[ constant ] = Object.const_get( constant )
|
10
|
+
Kernel::silence_warnings { Object.const_set( constant, val ) }
|
11
|
+
end
|
12
|
+
|
13
|
+
begin
|
14
|
+
block.call
|
15
|
+
ensure
|
16
|
+
constants.each do |constant, val|
|
17
|
+
Kernel::silence_warnings { Object.const_set( constant, saved_constants[ constant ] ) }
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
# http://mislav.uniqpath.com/2011/06/ruby-verbose-mode/
|
24
|
+
# these methods are already present in Active Support
|
25
|
+
module Kernel
|
26
|
+
def silence_warnings
|
27
|
+
with_warnings(nil) { yield }
|
28
|
+
end
|
29
|
+
|
30
|
+
def with_warnings(flag)
|
31
|
+
old_verbose, $VERBOSE = $VERBOSE, flag
|
32
|
+
yield
|
33
|
+
ensure
|
34
|
+
$VERBOSE = old_verbose
|
35
|
+
end
|
36
|
+
end unless Kernel.respond_to? :silence_warnings
|
37
|
+
|
4
38
|
RSpec.configure do |config|
|
5
39
|
config.filter_run :focus => true
|
6
40
|
config.run_all_when_everything_filtered = true
|
7
41
|
config.treat_symbols_as_metadata_keys_with_true_values = true
|
42
|
+
config.include(ManipulatesConstants)
|
8
43
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aruba
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -12,11 +12,11 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date:
|
15
|
+
date: 2012-10-09 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: cucumber
|
19
|
-
requirement:
|
19
|
+
requirement: !ruby/object:Gem::Requirement
|
20
20
|
none: false
|
21
21
|
requirements:
|
22
22
|
- - ! '>='
|
@@ -24,21 +24,31 @@ dependencies:
|
|
24
24
|
version: 1.1.1
|
25
25
|
type: :runtime
|
26
26
|
prerelease: false
|
27
|
-
version_requirements:
|
27
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 1.1.1
|
28
33
|
- !ruby/object:Gem::Dependency
|
29
34
|
name: childprocess
|
30
|
-
requirement:
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
31
36
|
none: false
|
32
37
|
requirements:
|
33
|
-
- -
|
38
|
+
- - '='
|
34
39
|
- !ruby/object:Gem::Version
|
35
40
|
version: 0.2.3
|
36
41
|
type: :runtime
|
37
42
|
prerelease: false
|
38
|
-
version_requirements:
|
43
|
+
version_requirements: !ruby/object:Gem::Requirement
|
44
|
+
none: false
|
45
|
+
requirements:
|
46
|
+
- - '='
|
47
|
+
- !ruby/object:Gem::Version
|
48
|
+
version: 0.2.3
|
39
49
|
- !ruby/object:Gem::Dependency
|
40
50
|
name: ffi
|
41
|
-
requirement:
|
51
|
+
requirement: !ruby/object:Gem::Requirement
|
42
52
|
none: false
|
43
53
|
requirements:
|
44
54
|
- - ! '>='
|
@@ -46,10 +56,15 @@ dependencies:
|
|
46
56
|
version: 1.0.11
|
47
57
|
type: :runtime
|
48
58
|
prerelease: false
|
49
|
-
version_requirements:
|
59
|
+
version_requirements: !ruby/object:Gem::Requirement
|
60
|
+
none: false
|
61
|
+
requirements:
|
62
|
+
- - ! '>='
|
63
|
+
- !ruby/object:Gem::Version
|
64
|
+
version: 1.0.11
|
50
65
|
- !ruby/object:Gem::Dependency
|
51
|
-
name: rspec
|
52
|
-
requirement:
|
66
|
+
name: rspec-expectations
|
67
|
+
requirement: !ruby/object:Gem::Requirement
|
53
68
|
none: false
|
54
69
|
requirements:
|
55
70
|
- - ! '>='
|
@@ -57,10 +72,15 @@ dependencies:
|
|
57
72
|
version: 2.7.0
|
58
73
|
type: :runtime
|
59
74
|
prerelease: false
|
60
|
-
version_requirements:
|
75
|
+
version_requirements: !ruby/object:Gem::Requirement
|
76
|
+
none: false
|
77
|
+
requirements:
|
78
|
+
- - ! '>='
|
79
|
+
- !ruby/object:Gem::Version
|
80
|
+
version: 2.7.0
|
61
81
|
- !ruby/object:Gem::Dependency
|
62
82
|
name: bcat
|
63
|
-
requirement:
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
64
84
|
none: false
|
65
85
|
requirements:
|
66
86
|
- - ! '>='
|
@@ -68,10 +88,15 @@ dependencies:
|
|
68
88
|
version: 0.6.1
|
69
89
|
type: :development
|
70
90
|
prerelease: false
|
71
|
-
version_requirements:
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
none: false
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.6.1
|
72
97
|
- !ruby/object:Gem::Dependency
|
73
98
|
name: rdiscount
|
74
|
-
requirement:
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
75
100
|
none: false
|
76
101
|
requirements:
|
77
102
|
- - ! '>='
|
@@ -79,10 +104,15 @@ dependencies:
|
|
79
104
|
version: 1.6.8
|
80
105
|
type: :development
|
81
106
|
prerelease: false
|
82
|
-
version_requirements:
|
107
|
+
version_requirements: !ruby/object:Gem::Requirement
|
108
|
+
none: false
|
109
|
+
requirements:
|
110
|
+
- - ! '>='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: 1.6.8
|
83
113
|
- !ruby/object:Gem::Dependency
|
84
114
|
name: rake
|
85
|
-
requirement:
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
86
116
|
none: false
|
87
117
|
requirements:
|
88
118
|
- - ! '>='
|
@@ -90,60 +120,130 @@ dependencies:
|
|
90
120
|
version: 0.9.2
|
91
121
|
type: :development
|
92
122
|
prerelease: false
|
93
|
-
version_requirements:
|
123
|
+
version_requirements: !ruby/object:Gem::Requirement
|
124
|
+
none: false
|
125
|
+
requirements:
|
126
|
+
- - ! '>='
|
127
|
+
- !ruby/object:Gem::Version
|
128
|
+
version: 0.9.2
|
129
|
+
- !ruby/object:Gem::Dependency
|
130
|
+
name: rspec
|
131
|
+
requirement: !ruby/object:Gem::Requirement
|
132
|
+
none: false
|
133
|
+
requirements:
|
134
|
+
- - ! '>='
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: 2.7.0
|
137
|
+
type: :development
|
138
|
+
prerelease: false
|
139
|
+
version_requirements: !ruby/object:Gem::Requirement
|
140
|
+
none: false
|
141
|
+
requirements:
|
142
|
+
- - ! '>='
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: 2.7.0
|
94
145
|
description: CLI Steps for Cucumber, hand-crafted for you in Aruba
|
95
146
|
email: cukes@googlegroups.com
|
96
147
|
executables: []
|
97
148
|
extensions: []
|
98
149
|
extra_rdoc_files: []
|
99
150
|
files:
|
100
|
-
-
|
101
|
-
|
102
|
-
-
|
103
|
-
|
104
|
-
-
|
105
|
-
|
106
|
-
-
|
107
|
-
|
108
|
-
-
|
109
|
-
|
110
|
-
-
|
111
|
-
|
112
|
-
-
|
113
|
-
|
114
|
-
-
|
115
|
-
|
116
|
-
-
|
117
|
-
|
118
|
-
-
|
119
|
-
|
120
|
-
-
|
121
|
-
|
122
|
-
-
|
123
|
-
|
124
|
-
-
|
125
|
-
|
126
|
-
-
|
127
|
-
|
128
|
-
-
|
129
|
-
|
130
|
-
-
|
131
|
-
|
132
|
-
-
|
133
|
-
|
134
|
-
-
|
135
|
-
|
136
|
-
-
|
137
|
-
|
138
|
-
-
|
139
|
-
|
140
|
-
-
|
141
|
-
|
142
|
-
-
|
143
|
-
|
144
|
-
-
|
145
|
-
|
146
|
-
-
|
151
|
+
- !binary |-
|
152
|
+
LmRvY3VtZW50
|
153
|
+
- !binary |-
|
154
|
+
LmdpdGlnbm9yZQ==
|
155
|
+
- !binary |-
|
156
|
+
LnJzcGVj
|
157
|
+
- !binary |-
|
158
|
+
LnJ2bXJj
|
159
|
+
- !binary |-
|
160
|
+
LnRyYXZpcy55bWw=
|
161
|
+
- !binary |-
|
162
|
+
R2VtZmlsZQ==
|
163
|
+
- !binary |-
|
164
|
+
SGlzdG9yeS5tZA==
|
165
|
+
- !binary |-
|
166
|
+
TElDRU5TRQ==
|
167
|
+
- !binary |-
|
168
|
+
UkVBRE1FLm1k
|
169
|
+
- !binary |-
|
170
|
+
UmFrZWZpbGU=
|
171
|
+
- !binary |-
|
172
|
+
YXJ1YmEuZ2Vtc3BlYw==
|
173
|
+
- !binary |-
|
174
|
+
Y29uZmlnLy5naXRpZ25vcmU=
|
175
|
+
- !binary |-
|
176
|
+
Y3VjdW1iZXIueW1s
|
177
|
+
- !binary |-
|
178
|
+
ZmVhdHVyZXMvYmVmb3JlX2NtZF9ob29rcy5mZWF0dXJl
|
179
|
+
- !binary |-
|
180
|
+
ZmVhdHVyZXMvZXhpdF9zdGF0dXNlcy5mZWF0dXJl
|
181
|
+
- !binary |-
|
182
|
+
ZmVhdHVyZXMvZmlsZV9zeXN0ZW1fY29tbWFuZHMuZmVhdHVyZQ==
|
183
|
+
- !binary |-
|
184
|
+
ZmVhdHVyZXMvZmx1c2hpbmcuZmVhdHVyZQ==
|
185
|
+
- !binary |-
|
186
|
+
ZmVhdHVyZXMvaW50ZXJhY3RpdmUuZmVhdHVyZQ==
|
187
|
+
- !binary |-
|
188
|
+
ZmVhdHVyZXMvbm9fY2xvYmJlci5mZWF0dXJl
|
189
|
+
- !binary |-
|
190
|
+
ZmVhdHVyZXMvb3V0cHV0LmZlYXR1cmU=
|
191
|
+
- !binary |-
|
192
|
+
ZmVhdHVyZXMvc3RlcF9kZWZpbml0aW9ucy9hcnViYV9kZXZfc3RlcHMucmI=
|
193
|
+
- !binary |-
|
194
|
+
ZmVhdHVyZXMvc3VwcG9ydC9lbnYucmI=
|
195
|
+
- !binary |-
|
196
|
+
bGliL2FydWJhLnJi
|
197
|
+
- !binary |-
|
198
|
+
bGliL2FydWJhL2FwaS5yYg==
|
199
|
+
- !binary |-
|
200
|
+
bGliL2FydWJhL2NvbmZpZy5yYg==
|
201
|
+
- !binary |-
|
202
|
+
bGliL2FydWJhL2N1Y3VtYmVyLnJi
|
203
|
+
- !binary |-
|
204
|
+
bGliL2FydWJhL2N1Y3VtYmVyL2hvb2tzLnJi
|
205
|
+
- !binary |-
|
206
|
+
bGliL2FydWJhL2pydWJ5LnJi
|
207
|
+
- !binary |-
|
208
|
+
bGliL2FydWJhL3Byb2Nlc3MucmI=
|
209
|
+
- !binary |-
|
210
|
+
bGliL2FydWJhL3JlcG9ydGluZy5yYg==
|
211
|
+
- !binary |-
|
212
|
+
c3BlYy9hcnViYS9hcGlfc3BlYy5yYg==
|
213
|
+
- !binary |-
|
214
|
+
c3BlYy9hcnViYS9ob29rc19zcGVjLnJi
|
215
|
+
- !binary |-
|
216
|
+
c3BlYy9hcnViYS9qcnVieV9zcGVjLnJi
|
217
|
+
- !binary |-
|
218
|
+
c3BlYy9hcnViYS9wcm9jZXNzX3NwZWMucmI=
|
219
|
+
- !binary |-
|
220
|
+
c3BlYy9zcGVjX2hlbHBlci5yYg==
|
221
|
+
- !binary |-
|
222
|
+
dGVtcGxhdGVzL2Nzcy9jb25zb2xlLmNzcw==
|
223
|
+
- !binary |-
|
224
|
+
dGVtcGxhdGVzL2Nzcy9maWxlc3lzdGVtLmNzcw==
|
225
|
+
- !binary |-
|
226
|
+
dGVtcGxhdGVzL2Nzcy9weWdtZW50cy1hdXR1bW4uY3Nz
|
227
|
+
- !binary |-
|
228
|
+
dGVtcGxhdGVzL2ZpbGVzLmVyYg==
|
229
|
+
- !binary |-
|
230
|
+
dGVtcGxhdGVzL2ltYWdlcy9MSUNFTlNF
|
231
|
+
- !binary |-
|
232
|
+
dGVtcGxhdGVzL2ltYWdlcy9mb2xkZXIucG5n
|
233
|
+
- !binary |-
|
234
|
+
dGVtcGxhdGVzL2ltYWdlcy9wYWdlX3doaXRlLnBuZw==
|
235
|
+
- !binary |-
|
236
|
+
dGVtcGxhdGVzL2ltYWdlcy9wYWdlX3doaXRlX2doZXJraW4ucG5n
|
237
|
+
- !binary |-
|
238
|
+
dGVtcGxhdGVzL2ltYWdlcy9wYWdlX3doaXRlX3J1YnkucG5n
|
239
|
+
- !binary |-
|
240
|
+
dGVtcGxhdGVzL2luZGV4LmVyYg==
|
241
|
+
- !binary |-
|
242
|
+
dGVtcGxhdGVzL2pzL2ZpbGVzeXN0ZW0uanM=
|
243
|
+
- !binary |-
|
244
|
+
dGVtcGxhdGVzL2pzL2pxdWVyeS0xLjYuMS5taW4uanM=
|
245
|
+
- !binary |-
|
246
|
+
dGVtcGxhdGVzL21haW4uZXJi
|
147
247
|
homepage: http://github.com/cucumber/aruba
|
148
248
|
licenses: []
|
149
249
|
post_install_message:
|
@@ -159,7 +259,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
159
259
|
version: '0'
|
160
260
|
segments:
|
161
261
|
- 0
|
162
|
-
hash: -
|
262
|
+
hash: -2122942938856216296
|
163
263
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
164
264
|
none: false
|
165
265
|
requirements:
|
@@ -168,24 +268,39 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
168
268
|
version: '0'
|
169
269
|
segments:
|
170
270
|
- 0
|
171
|
-
hash: -
|
271
|
+
hash: -2122942938856216296
|
172
272
|
requirements: []
|
173
273
|
rubyforge_project:
|
174
|
-
rubygems_version: 1.8.
|
274
|
+
rubygems_version: 1.8.24
|
175
275
|
signing_key:
|
176
276
|
specification_version: 3
|
177
|
-
summary: aruba-0.
|
277
|
+
summary: aruba-0.5.0
|
178
278
|
test_files:
|
179
|
-
-
|
180
|
-
|
181
|
-
-
|
182
|
-
|
183
|
-
-
|
184
|
-
|
185
|
-
-
|
186
|
-
|
187
|
-
-
|
188
|
-
|
189
|
-
-
|
190
|
-
|
191
|
-
-
|
279
|
+
- !binary |-
|
280
|
+
ZmVhdHVyZXMvYmVmb3JlX2NtZF9ob29rcy5mZWF0dXJl
|
281
|
+
- !binary |-
|
282
|
+
ZmVhdHVyZXMvZXhpdF9zdGF0dXNlcy5mZWF0dXJl
|
283
|
+
- !binary |-
|
284
|
+
ZmVhdHVyZXMvZmlsZV9zeXN0ZW1fY29tbWFuZHMuZmVhdHVyZQ==
|
285
|
+
- !binary |-
|
286
|
+
ZmVhdHVyZXMvZmx1c2hpbmcuZmVhdHVyZQ==
|
287
|
+
- !binary |-
|
288
|
+
ZmVhdHVyZXMvaW50ZXJhY3RpdmUuZmVhdHVyZQ==
|
289
|
+
- !binary |-
|
290
|
+
ZmVhdHVyZXMvbm9fY2xvYmJlci5mZWF0dXJl
|
291
|
+
- !binary |-
|
292
|
+
ZmVhdHVyZXMvb3V0cHV0LmZlYXR1cmU=
|
293
|
+
- !binary |-
|
294
|
+
ZmVhdHVyZXMvc3RlcF9kZWZpbml0aW9ucy9hcnViYV9kZXZfc3RlcHMucmI=
|
295
|
+
- !binary |-
|
296
|
+
ZmVhdHVyZXMvc3VwcG9ydC9lbnYucmI=
|
297
|
+
- !binary |-
|
298
|
+
c3BlYy9hcnViYS9hcGlfc3BlYy5yYg==
|
299
|
+
- !binary |-
|
300
|
+
c3BlYy9hcnViYS9ob29rc19zcGVjLnJi
|
301
|
+
- !binary |-
|
302
|
+
c3BlYy9hcnViYS9qcnVieV9zcGVjLnJi
|
303
|
+
- !binary |-
|
304
|
+
c3BlYy9hcnViYS9wcm9jZXNzX3NwZWMucmI=
|
305
|
+
- !binary |-
|
306
|
+
c3BlYy9zcGVjX2hlbHBlci5yYg==
|