rubytest-cli 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
data/.index ADDED
@@ -0,0 +1,66 @@
1
+ ---
2
+ revision: 2013
3
+ type: ruby
4
+ sources:
5
+ - var
6
+ authors:
7
+ - name: trans
8
+ email: transfire@gmail.com
9
+ organizations: []
10
+ requirements:
11
+ - version: 0.7.0+
12
+ name: rubytest
13
+ - name: ansi
14
+ - groups:
15
+ - build
16
+ development: true
17
+ name: fire
18
+ - groups:
19
+ - build
20
+ development: true
21
+ name: detroit
22
+ - groups:
23
+ - test
24
+ development: true
25
+ name: qed
26
+ - groups:
27
+ - test
28
+ development: true
29
+ name: ae
30
+ conflicts: []
31
+ alternatives: []
32
+ resources:
33
+ - type: home
34
+ uri: http://rubyworks.github.com/rubytest-cli
35
+ label: Homepage
36
+ - type: code
37
+ uri: http://github.com/rubyworks/rubytest-cli
38
+ label: Source Code
39
+ - type: bugs
40
+ uri: http://github.com/rubyworks/rubytest-cli/issues
41
+ label: Issue Tracker
42
+ - type: mail
43
+ uri: http://groups.google.com/group/rubyworks-mailinglist
44
+ label: Mailing List
45
+ repositories:
46
+ - name: upstream
47
+ scm: git
48
+ uri: git@github.com:rubyworks/rubytest-cli.git
49
+ categories: []
50
+ copyrights:
51
+ - holder: RubyWorks
52
+ year: '2011'
53
+ license: BSD-2-Clause
54
+ customs: []
55
+ paths:
56
+ lib:
57
+ - lib
58
+ created: '2011-07-23'
59
+ summary: CLI for Ruby Universal Test Harness
60
+ title: Ruby Test CLI
61
+ version: 0.1.0
62
+ name: rubytest-cli
63
+ description: ! 'Rubytest CLI is a command-line interface for running tests for
64
+
65
+ Rubytest-based test frameworks.'
66
+ date: '2013-02-18'
@@ -0,0 +1,10 @@
1
+ --title "Ruby Test CLI"
2
+ --readme README.md
3
+ --output-dir doc
4
+ --protected
5
+ --private
6
+ lib
7
+ -
8
+ *.txt
9
+ *.md
10
+
@@ -0,0 +1,10 @@
1
+ # RELEASE HISTORY
2
+
3
+ ## 0.1.0 / 2013-02-19
4
+
5
+ First release of Ruby Test CLI.
6
+
7
+ Changes:
8
+
9
+ * It's Your Birthday!
10
+
@@ -0,0 +1,33 @@
1
+ # COPYRIGHT NOTICES
2
+
3
+ ## Ruby Test
4
+
5
+ **Project** | Ruby Test
6
+ --------------|------------------------------------------
7
+ **Website** | http://rubyworks.github.com/ruby-test
8
+ **License** | BSD-2-Clause
9
+ **Copyright** | (c) 2011 Rubyworks
10
+
11
+ Copyright 2011 Rubyworks. All rights reserved.
12
+
13
+ Redistribution and use in source and binary forms, with or without
14
+ modification, are permitted provided that the following conditions are met:
15
+
16
+ 1. Redistributions of source code must retain the above copyright notice,
17
+ this list of conditions and the following disclaimer.
18
+
19
+ 2. Redistributions in binary form must reproduce the above copyright
20
+ notice, this list of conditions and the following disclaimer in the
21
+ documentation and/or other materials provided with the distribution.
22
+
23
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
24
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
25
+ FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
26
+ COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
27
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
28
+ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
30
+ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
32
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
+
@@ -0,0 +1,101 @@
1
+ # Ruby Test CLI
2
+
3
+ Command line interface for running tests for RubyTest-based
4
+ test frameworks.
5
+
6
+ [Website](http://rubyworks.github.com/rubytest-cli) /
7
+ [Support](http://github.com/rubyworks/rubytest-cli/issues) /
8
+ [Development](http://github.com/rubyworks/rubytest-cli)
9
+
10
+ [![Build Status](https://secure.travis-ci.org/rubyworks/rubytest.png)](http://travis-ci.org/rubyworks/rubytest-cli)
11
+ [![Gem Version](https://badge.fury.io/rb/rubytest.png)](http://badge.fury.io/rb/rubytest-cli)
12
+
13
+
14
+ ## Usage
15
+
16
+ The rubytest command-line tool follows many of the usual conventions
17
+ so it's use is farily straightforward. The `-h/--help` option is
18
+ available to detail all its options. Here is a basic example of usage.
19
+
20
+ $ rubytest -Ilib test/*_test.rb
21
+
22
+ This would add `lib` to Ruby's $LOAD_PATH and then load all the
23
+ test files matching the `test/*_test.rb` glob.
24
+
25
+ When running tests, you need to be sure to load in your test framework
26
+ or your framework's Ruby Test adapter. This is usually done via a helper
27
+ script in the test files, but might also be done via command line options,
28
+ e.g.
29
+
30
+ $ rubytest -r lemon -r ae test/test_*.rb
31
+
32
+ Of course, it can become tedious having to type such a long command
33
+ over and over. One way to handle this is to use an a *runtime adjunct tool*
34
+ like [DotOpts](http://rubyworks.github.com/dotopts). For example, a project
35
+ might add a `.opts` file with the entry:
36
+
37
+ rubytest
38
+ -f progress
39
+ -r spectroscope
40
+ -r rspecial
41
+ spec/spec_*.rb
42
+
43
+ That will work in many cases, but to make things <u>solid</u> Ruby Test
44
+ supports default pre-configuration files. To use, add an `etc/test.rb` file
45
+ to a project and add `Test.run` (or the alias `Test.configure`) entries.
46
+
47
+ ```ruby
48
+ Test.run do |r|
49
+ r.loadpath 'lib'
50
+ r.test_files << 'test/*_test.rb'
51
+ end
52
+
53
+ Test.run 'coverage' do |r|
54
+ r.loadpath 'lib'
55
+ r.test_files << 'test/*_test.rb'
56
+ r.before do
57
+ require 'simplecov'
58
+ Simplecov.setup do |s|
59
+ s.filter 'test/'
60
+ s.command_name File.basename($0)
61
+ s.coverage_dir 'log/coverage'
62
+ end
63
+ # to ensure proper coverage
64
+ require 'myapp'
65
+ end
66
+ end
67
+ ```
68
+
69
+ Now when `rubytest` is used the first configuration will apply. To use
70
+ the 'coverage' configuration use `-p/--profile` option.
71
+
72
+ $ rubytest -p coverage
73
+
74
+ In this manner your project can have any number of different test
75
+ configurations, and it is easy to select between them.
76
+
77
+ Note that the above example could have used `Test.configure` instead
78
+ of `Test.run`. They do the same thing. But do not use `Test.run!` because
79
+ that will cause testing to be run immediately.
80
+
81
+ The configuration file can be in the `config` directory instead of `etc`, which
82
+ is nice for Rails projects. But if you prefer a file in the project's root
83
+ then either `Testfile` or `.test` can be also be used instead. All of these
84
+ locations are supported simply because no one configuration convention has
85
+ taken a solid hold in the Ruby community. However, we highly recommend using
86
+ `etc/test.rb`. In the end that seems like the best overall convention
87
+ (and beleive me, I've analyized the hell out of every option!).
88
+
89
+
90
+ ## Copyrights
91
+
92
+ Rubytest CLI is copyrighted open-source software.
93
+
94
+ Copyright (c) 2013 Rubyworks. All rights reserved.
95
+
96
+ It is redistributable and modifiable in accordance with the terms of the
97
+ [BSD-2-Clause] license.
98
+
99
+ See LICENSE.txt for the full text.
100
+
101
+
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env ruby
2
+ begin
3
+ require 'rubytest-cli'
4
+ Test::CLI.run
5
+ rescue RuntimeError => error
6
+ raise error if $DEBUG
7
+ $stderr.puts error
8
+ end
9
+
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env ruby
2
+ begin
3
+ require 'rubytest-cli'
4
+ Test::CLI.run
5
+ rescue RuntimeError => error
6
+ raise error if $DEBUG
7
+ $stderr.puts error
8
+ end
9
+
@@ -0,0 +1,280 @@
1
+ require 'rubytest'
2
+
3
+ module Test
4
+
5
+ # Command line interface to test runner.
6
+ #
7
+ class CLI
8
+
9
+ # Test configuration file can be in `etc/test.rb` or `config/test.rb`, or
10
+ # `Testfile` or '.test` with optional `.rb` extension, in that order of
11
+ # precedence. To use a different file there is the -c/--config option.
12
+ GLOB_CONFIG = '{etc/test.rb,config/test.rb,testfile.rb,testfile,.test.rb,.test}'
13
+
14
+ # Convenience method for invoking the CLI.
15
+ #
16
+ # @return nothing
17
+ def self.run(*argv)
18
+ new.run(*argv)
19
+ end
20
+
21
+ # Initialize CLI instance.
22
+ #
23
+ # @return nothing
24
+ def initialize
25
+ require 'optparse'
26
+
27
+ @config = {}
28
+ @config_file = nil
29
+ #@config = Test.configuration(true)
30
+ end
31
+
32
+ # Run tests.
33
+ #
34
+ # @return nothing
35
+ def run(argv=nil)
36
+ #require_dotopts
37
+ argv = (argv || ARGV.dup)
38
+ options.parse!(argv)
39
+
40
+ @config[:files] = argv unless argv.empty?
41
+
42
+ load_config
43
+
44
+ test_config = Test.configuration(profile)
45
+ test_config.apply_environment_defaults
46
+ test_config.apply(@config)
47
+
48
+ Test.run!(test_config)
49
+
50
+ #runner = Runner.new(test_config)
51
+ #begin
52
+ # success = runner.run
53
+ # exit -1 unless success
54
+ #rescue => error
55
+ # raise error if $DEBUG
56
+ # $stderr.puts('ERROR: ' + error.to_s)
57
+ # exit -1
58
+ #end
59
+ end
60
+
61
+ # TODO: Not sure if this should be used or not.
62
+ def require_dotopts
63
+ begin
64
+ require 'dotopts'
65
+ rescue LoadError
66
+ end
67
+ end
68
+
69
+ # Setup OptionsParser instance.
70
+ #
71
+ # @return [OptionParser]
72
+ def options
73
+ conf = self
74
+
75
+ OptionParser.new do |opt|
76
+ opt.banner = "Usage: #{File.basename($0)} [options] [files ...]"
77
+
78
+ opt.on '-p', '--profile NAME', 'use configuration profile' do |name|
79
+ conf.profile = name
80
+ end
81
+
82
+ #opt.separator "PRESET OPTIONS:"
83
+ #pnames = profile_names
84
+ #unless pnames.empty?
85
+ # pnames.each do |pname|
86
+ # opt.separator((" " * 40) + "* #{pname}")
87
+ # end
88
+ #end
89
+ #opt.separator "CONFIG OPTIONS:"
90
+
91
+ opt.on '-f', '--format NAME', 'report format' do |name|
92
+ conf.format = name
93
+ end
94
+ opt.on '-y', '--tapy', 'shortcut for -f tapy' do
95
+ conf.format = 'tapy'
96
+ end
97
+ opt.on '-j', '--tapj', 'shortcut for -f tapj' do
98
+ conf.format = 'tapj'
99
+ end
100
+
101
+ # tempted to change -T
102
+ opt.on '-t', '--tag TAG', 'select tests by tag' do |tag|
103
+ conf.tags.concat makelist(tag)
104
+ end
105
+ opt.on '-u', '--unit TAG', 'select tests by software unit' do |unit|
106
+ conf.units.concat makelist(unit)
107
+ end
108
+ opt.on '-m', '--match TEXT', 'select tests by description' do |text|
109
+ conf.match.concat makelist(text)
110
+ end
111
+
112
+ opt.on '-A', '--autopath', 'automatically add paths to $LOAD_PATH' do |paths|
113
+ conf.autopath = true
114
+ end
115
+ opt.on '-I', '--loadpath PATH', 'add given path to $LOAD_PATH' do |paths|
116
+ #makelist(paths).reverse_each do |path|
117
+ # $LOAD_PATH.unshift path
118
+ #end
119
+ conf.loadpath.concat makelist(paths)
120
+ end
121
+ opt.on '-C', '--chdir DIR', 'change directory before running tests' do |dir|
122
+ conf.chdir = dir
123
+ end
124
+ opt.on '-R', '--chroot', 'change to project root directory before running tests' do
125
+ conf.chdir = Config.root
126
+ end
127
+ opt.on '-r', '--require FILE', 'require file' do |file|
128
+ conf.requires.concat makelist(file)
129
+ end
130
+ opt.on '-c', '--config FILE', "use alternate config file" do |file|
131
+ conf.config_files << file
132
+ end
133
+ #opt.on '-T', '--tests GLOB', "tests to run (if none given as arguments)" do |glob|
134
+ # config.files << glob
135
+ #end
136
+ opt.on '-V' , '--verbose', 'provide extra detail in reports' do
137
+ conf.verbose = true
138
+ end
139
+ #opt.on('--log PATH', 'log test output to path'){ |path|
140
+ # config.log = path
141
+ #}
142
+ opt.on("--[no-]ansi" , 'turn on/off ANSI colors'){ |v| $ansi = v }
143
+ opt.on("--debug" , 'turn on debugging mode'){ $DEBUG = true }
144
+
145
+ #opt.separator "COMMAND OPTIONS:"
146
+ opt.on('--about' , 'display information about rubytest') do
147
+ puts "Ruby Test v%s" % [Test.index['version']]
148
+ Test.index['copyrights'].each do |c|
149
+ puts "(c) %s %s (%s)" % c.values_at('year', 'holder', 'license')
150
+ end
151
+ exit
152
+ end
153
+ opt.on('--version' , 'display rubytest version') do
154
+ puts Test::VERSION
155
+ exit
156
+ end
157
+ opt.on('-h', '--help', 'display this help message'){
158
+ puts opt
159
+ exit
160
+ }
161
+ end
162
+ end
163
+
164
+ # Test run configuration.
165
+ #
166
+ # @return [Hash]
167
+ def config
168
+ @config
169
+ end
170
+
171
+ # Load configuration file. An example file might look like:
172
+ #
173
+ # Test.configure do |run|
174
+ # run.files << 'test/case_*.rb'
175
+ # end
176
+ #
177
+ # @deprecated Planned for deprecation in April 2013.
178
+ def load_config
179
+ file = config_file
180
+ unless file
181
+ if chdir
182
+ file = Dir.glob(File.join(chdir, GLOB_CONFIG)).first
183
+ else
184
+ file = Dir.glob(GLOB_CONFIG).first
185
+ end
186
+ end
187
+ load file if file
188
+ end
189
+
190
+ # Find traditional configuration file.
191
+ #
192
+ # @return [String] Config file path.
193
+ def config_file
194
+ @config_file
195
+ end
196
+
197
+ #
198
+ def profile
199
+ @profile
200
+ end
201
+
202
+ #
203
+ def profile=(name)
204
+ @profile = name.to_s
205
+ end
206
+
207
+ #
208
+ def format
209
+ @config[:format]
210
+ end
211
+
212
+ #
213
+ def format=(format)
214
+ @config[:format] = format.to_s
215
+ end
216
+
217
+ def tags
218
+ @config[:tags] ||= []
219
+ end
220
+
221
+ def units
222
+ @config[:units] ||= []
223
+ end
224
+
225
+ def match
226
+ @config[:match] ||= []
227
+ end
228
+
229
+ def autopath?
230
+ @config[:autopath]
231
+ end
232
+
233
+ def autopath=(bool)
234
+ @config[:autopath] = !! bool
235
+ end
236
+
237
+ def chdir
238
+ @config[:chdir]
239
+ end
240
+
241
+ def chdir=(dir)
242
+ @config[:chdir] = dir.to_str
243
+ end
244
+
245
+ def loadpath
246
+ @config[:loadpath] ||= []
247
+ end
248
+
249
+ def requires
250
+ @config[:requires] ||= []
251
+ end
252
+
253
+ def verbose?
254
+ @config[:verbose]
255
+ end
256
+
257
+ def verbose=(bool)
258
+ @config[:verbose] = !! bool
259
+ end
260
+
261
+ private
262
+
263
+ # If given a String then split up at `:` and `;` markers.
264
+ # Otherwise ensure the list is an Array and the entries are
265
+ # all strings and not empty.
266
+ #
267
+ # @return [Array<String>]
268
+ def makelist(list)
269
+ case list
270
+ when String
271
+ list = list.split(/[:;]/)
272
+ else
273
+ list = Array(list).map{ |path| path.to_s }
274
+ end
275
+ list.reject{ |path| path.strip.empty? }
276
+ end
277
+
278
+ end
279
+
280
+ end
@@ -0,0 +1,66 @@
1
+ ---
2
+ revision: 2013
3
+ type: ruby
4
+ sources:
5
+ - var
6
+ authors:
7
+ - name: trans
8
+ email: transfire@gmail.com
9
+ organizations: []
10
+ requirements:
11
+ - version: 0.7.0+
12
+ name: rubytest
13
+ - name: ansi
14
+ - groups:
15
+ - build
16
+ development: true
17
+ name: fire
18
+ - groups:
19
+ - build
20
+ development: true
21
+ name: detroit
22
+ - groups:
23
+ - test
24
+ development: true
25
+ name: qed
26
+ - groups:
27
+ - test
28
+ development: true
29
+ name: ae
30
+ conflicts: []
31
+ alternatives: []
32
+ resources:
33
+ - type: home
34
+ uri: http://rubyworks.github.com/rubytest-cli
35
+ label: Homepage
36
+ - type: code
37
+ uri: http://github.com/rubyworks/rubytest-cli
38
+ label: Source Code
39
+ - type: bugs
40
+ uri: http://github.com/rubyworks/rubytest-cli/issues
41
+ label: Issue Tracker
42
+ - type: mail
43
+ uri: http://groups.google.com/group/rubyworks-mailinglist
44
+ label: Mailing List
45
+ repositories:
46
+ - name: upstream
47
+ scm: git
48
+ uri: git@github.com:rubyworks/rubytest-cli.git
49
+ categories: []
50
+ copyrights:
51
+ - holder: RubyWorks
52
+ year: '2011'
53
+ license: BSD-2-Clause
54
+ customs: []
55
+ paths:
56
+ lib:
57
+ - lib
58
+ created: '2011-07-23'
59
+ summary: CLI for Ruby Universal Test Harness
60
+ title: Ruby Test CLI
61
+ version: 0.1.0
62
+ name: rubytest-cli
63
+ description: ! 'Rubytest CLI is a command-line interface for running tests for
64
+
65
+ Rubytest-based test frameworks.'
66
+ date: '2013-02-18'
metadata ADDED
@@ -0,0 +1,159 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rubytest-cli
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - trans
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-18 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rubytest
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.7.0
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.7.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: ansi
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: fire
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: detroit
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ - !ruby/object:Gem::Dependency
79
+ name: qed
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ! '>='
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ type: :development
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: ae
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ description: ! 'Rubytest CLI is a command-line interface for running tests for
111
+
112
+ Rubytest-based test frameworks.'
113
+ email:
114
+ - transfire@gmail.com
115
+ executables:
116
+ - ruby-test
117
+ - rubytest
118
+ extensions: []
119
+ extra_rdoc_files:
120
+ - LICENSE.txt
121
+ - HISTORY.md
122
+ - README.md
123
+ files:
124
+ - .index
125
+ - .yardopts
126
+ - bin/ruby-test
127
+ - bin/rubytest
128
+ - lib/rubytest-cli.rb
129
+ - lib/rubytest-cli.yml
130
+ - LICENSE.txt
131
+ - HISTORY.md
132
+ - README.md
133
+ homepage: http://rubyworks.github.com/rubytest-cli
134
+ licenses:
135
+ - BSD-2-Clause
136
+ post_install_message:
137
+ rdoc_options: []
138
+ require_paths:
139
+ - lib
140
+ required_ruby_version: !ruby/object:Gem::Requirement
141
+ none: false
142
+ requirements:
143
+ - - ! '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ required_rubygems_version: !ruby/object:Gem::Requirement
147
+ none: false
148
+ requirements:
149
+ - - ! '>='
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ requirements: []
153
+ rubyforge_project:
154
+ rubygems_version: 1.8.24
155
+ signing_key:
156
+ specification_version: 3
157
+ summary: CLI for Ruby Universal Test Harness
158
+ test_files: []
159
+ has_rdoc: