testr 14.0.3 → 14.1.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/HISTORY.markdown CHANGED
@@ -1,15 +1,44 @@
1
1
  ------------------------------------------------------------------------------
2
- Version 14.0.3 (2011-10-11)
2
+ Version 14.1.0 (2011-11-03)
3
3
  ------------------------------------------------------------------------------
4
4
 
5
+ New features:
6
+
7
+ * Make servers responsive to quit request (SIGTERM) from upstream.
8
+
9
+ This change lets the user quit testr-master(1) while it is loading
10
+ test execution overhead (which can be a lengthy, blocking operation).
11
+
12
+ By sending a signal to the server, we don't have to wait for it to
13
+ finish processing its current command before seeing our :quit command.
14
+
15
+ * Add embedded BinMan manual pages to bin scripts. All TestR scripts now
16
+ have a `--help` option which displays their UNIX manual page. Try it!
17
+
18
+ The single-line JSON message protocol used by these scripts is now
19
+ documented in their manual pages, so you should have everything you
20
+ need to create *your own custom user interface to TestR* if you wish! :-)
21
+
5
22
  Bug fixes:
6
23
 
7
- * Forgot to migrate the `testr/config/rails` configuration helper to use the
8
- new TestR configuration parameter names.
24
+ * SIGCHLD does not awaken main thread in Ruby 1.9.3p0.
9
25
 
10
26
  Housekeeping:
11
27
 
12
- * README: add Gemfile howto for guard FS monitoring.
28
+ * Simplify watch(1) ps(1) process title monitoring.
29
+
30
+ * Testr: tell user to press ENTER after command key.
31
+
32
+ * README: add tip on loading factory_girl factories.
33
+
34
+ ------------------------------------------------------------------------------
35
+ Version 14.0.3 (2011-10-11)
36
+ ------------------------------------------------------------------------------
37
+
38
+ Bug fixes:
39
+
40
+ * Forgot to migrate the `testr/config/rails` configuration helper to use the
41
+ new TestR configuration parameter names.
13
42
 
14
43
  ------------------------------------------------------------------------------
15
44
  Version 14.0.2 (2011-10-11)
data/README.markdown CHANGED
@@ -64,13 +64,6 @@ As a Ruby gem:
64
64
 
65
65
  gem install testr
66
66
 
67
- In a Gemfile:
68
-
69
- gem 'testr', :require => false
70
- gem 'rb-inotify', :require => false if RUBY_PLATFORM =~ /linux/i
71
- gem 'rb-fsevent', :require => false if RUBY_PLATFORM =~ /darwin/i
72
- gem 'rb-fchange', :require => false if RUBY_PLATFORM =~ /mingw/i
73
-
74
67
  As a Git clone:
75
68
 
76
69
  git clone git://github.com/sunaku/testr
@@ -247,6 +240,28 @@ Support for the [Ruby on Rails](http://rubyonrails.org) web framework.
247
240
  Support for the [parallel_tests](https://github.com/grosser/parallel_tests)
248
241
  library.
249
242
 
243
+ ------------------------------------------------------------------------------
244
+ Usage tips
245
+ ------------------------------------------------------------------------------
246
+
247
+ ### [factory_girl](https://github.com/thoughtbot/factory_girl) factories
248
+
249
+ Don't load your factories in master process (as part of your test execution
250
+ overhead) because that would necessitate the reloading of said overhead
251
+ whenever you change an existing factory definition or create a new one.
252
+
253
+ Instead, use `at_exit()` to wait until (1) after the master process has forked
254
+ a worker process and (2) just before that worker process runs its test suite
255
+ (whose execution is started by your test framework's own `at_exit()` handler).
256
+
257
+ This way, worker processes will pick up changes in your factories "for free"
258
+ whenever they (re)run your test files. Also, don't load your factories or do
259
+ anything else in your `at_exit()` handler if Ruby is exiting because of a
260
+ raised exception (denoted by the `$!` global variable in the snippet below).
261
+
262
+ require 'factory_girl'
263
+ at_exit { FactoryGirl.find_definitions unless $! }
264
+
250
265
  ------------------------------------------------------------------------------
251
266
  Known issues
252
267
  ------------------------------------------------------------------------------
data/Rakefile CHANGED
@@ -1 +1,2 @@
1
1
  require "bundler/gem_tasks"
2
+ require 'binman/rake_tasks'
data/bin/testr CHANGED
@@ -1,4 +1,52 @@
1
1
  #!/usr/bin/env ruby
2
+ =begin
3
+
4
+ TESTR 1 "2011-11-03" "14.1.0" "TestR User Manuals"
5
+ ==================================================
6
+
7
+ NAME
8
+ ----
9
+
10
+ testr - Continuous testing tool for Ruby
11
+
12
+ SYNOPSIS
13
+ --------
14
+
15
+ `testr` [*OPTION*]...
16
+
17
+ DESCRIPTION
18
+ -----------
19
+
20
+ This program is a simple command-line user interface for testr-driver(1). It
21
+ demonstrates how the components of TestR work together and also serves as an
22
+ example of how you can create your own TestR user interface.
23
+
24
+ When run, it presents you with a menu of single-character commands that you
25
+ can enter, loads the test execution overhead into testr-master(1), and
26
+ finally notifies you when the master is ready to run test files.
27
+
28
+ It also launches testr-herald(1) alongside testr-master(1). When the herald
29
+ reports a modified file that belongs to the test execution overhead, this
30
+ program notifies you accordingly and then replaces the current master with a
31
+ new one that will absorb the modified test execution overhead into itself.
32
+
33
+ OPTIONS
34
+ -------
35
+
36
+ `-h`, `--help`
37
+ Display this help manual using man(1).
38
+
39
+ SEE ALSO
40
+ --------
41
+
42
+ testr(1), testr-driver(1), testr-master(1), testr-herald(1)
43
+
44
+ =end =========================================================================
45
+
46
+ $0 = File.basename(__FILE__)
47
+
48
+ require 'binman'
49
+ BinMan.help
2
50
 
3
51
  require 'json'
4
52
  require 'testr/client'
@@ -34,7 +82,9 @@ COMMANDS = {
34
82
  }
35
83
 
36
84
  def COMMANDS.show
37
- each {|key, cmd| warn "testr: Type #{key} to #{cmd.to_s.tr('_', ' ')}." }
85
+ each do |key, cmd|
86
+ warn "testr: Type #{key} then ENTER to #{cmd.to_s.tr('_', ' ')}."
87
+ end
38
88
  end
39
89
 
40
90
  COMMANDS.show # instruct newbies
data/bin/testr-driver CHANGED
@@ -1,4 +1,67 @@
1
1
  #!/usr/bin/env ruby
2
+ =begin
3
+
4
+ TESTR-DRIVER 1 "2011-11-03" "14.1.0" "TestR User Manuals"
5
+ =========================================================
6
+
7
+ NAME
8
+ ----
9
+
10
+ testr-driver - tells master to run tests and keeps track of test results
11
+
12
+ SYNOPSIS
13
+ --------
14
+
15
+ `testr-driver` [*OPTION*]...
16
+
17
+ DESCRIPTION
18
+ -----------
19
+
20
+ This program reads the following single-line commands (JSON arrays) from its
21
+ standard input stream and performs the respective actions as described below.
22
+ It also funnels the standard output stream of testr-master(1) into its own.
23
+
24
+ `["run_all_test_files"]`
25
+ Runs all test files found within and beneath the current working directory.
26
+
27
+ `["stop_running_test_files"]`
28
+ Stops any test files that are currently running.
29
+
30
+ `["rerun_passed_test_files"]`
31
+ Runs all test files that have passed during their most recent run.
32
+
33
+ `["reabsorb_overhead_files"]`
34
+ Stops any test files that are currently running, reabsorbs the test
35
+ execution overhead, and resumes running those interrupted test files.
36
+
37
+ `["quit"]`
38
+ Stops all tests that are currently running and exits.
39
+
40
+ OPTIONS
41
+ -------
42
+
43
+ `-h`, `--help`
44
+ Display this help manual using man(1).
45
+
46
+ FILES
47
+ -----
48
+
49
+ `.testr.rb`
50
+ Ruby script in the directory where testr(1) is run.
51
+
52
+ SEE ALSO
53
+ --------
54
+
55
+ testr(1), testr-driver(1), testr-master(1), testr-herald(1)
56
+
57
+ =end =========================================================================
58
+
59
+ $0 = File.basename(__FILE__)
60
+
61
+ require 'binman'
62
+ BinMan.help
63
+
2
64
  require 'testr/driver'
3
65
  TestR::Driver.loop
66
+
4
67
  Process.waitall
data/bin/testr-herald CHANGED
@@ -1,9 +1,47 @@
1
1
  #!/usr/bin/env ruby
2
- STDOUT.sync = true
2
+ =begin
3
+
4
+ TESTR-HERALD 1 "2011-11-03" "14.1.0" "TestR User Manuals"
5
+ =========================================================
6
+
7
+ NAME
8
+ ----
9
+
10
+ testr-herald - monitors current directory tree and reports modified files
11
+
12
+ SYNOPSIS
13
+ --------
14
+
15
+ `testr-herald` [*OPTION*]...
16
+
17
+ DESCRIPTION
18
+ -----------
19
+
20
+ This program monitors the current working directory and prints relative paths
21
+ of modified files, one per line, to the standard output stream.
22
+
23
+ OPTIONS
24
+ -------
25
+
26
+ `-h`, `--help`
27
+ Display this help manual using man(1).
28
+
29
+ SEE ALSO
30
+ --------
31
+
32
+ testr(1), testr-driver(1), testr-master(1), testr-herald(1)
33
+
34
+ =end =========================================================================
35
+
36
+ $0 = File.basename(__FILE__)
37
+
38
+ require 'binman'
39
+ BinMan.help
3
40
 
4
41
  require 'guard'
5
42
  require 'guard/listener'
6
43
 
7
44
  listener = Guard::Listener.select_and_init
8
45
  listener.on_change {|files| puts files }
46
+ STDOUT.sync = true # don't buffer puts()
9
47
  listener.start
data/bin/testr-master CHANGED
@@ -1,5 +1,79 @@
1
1
  #!/usr/bin/env ruby
2
+ =begin
3
+
4
+ TESTR-MASTER 1 "2011-11-03" "14.1.0" "TestR User Manuals"
5
+ =========================================================
6
+
7
+ NAME
8
+ ----
9
+
10
+ testr-master - absorbs test execution overhead and forks to run your tests
11
+
12
+ SYNOPSIS
13
+ --------
14
+
15
+ `testr-master` [*OPTION*]...
16
+
17
+ DESCRIPTION
18
+ -----------
19
+
20
+ This program reads the following single-line commands (JSON arrays) from its
21
+ standard input stream and performs the respective actions as described below.
22
+
23
+ `["load",` *paths*`,` *files*`]`
24
+ Adds the given array of *paths* to Ruby's $LOAD_PATH, loads the given array
25
+ of *files* after removing their ".rb" file extension if present, and prints
26
+ the given command line to the standard output stream.
27
+
28
+ `["test",` *test_file*`,` *test_names*`]`
29
+ Runs the given *test_file* in a forked child process while instructing your
30
+ chosen unit testing framework (loaded by your test execution overhead) to
31
+ only run those tests that are named in the given array of *test_names*.
32
+
33
+ Prints the given command line to the standard output stream immediately
34
+ after forking the child process.
35
+
36
+ Prints the given command line, modified with `"pass"` (if the test passed)
37
+ or `"fail"` (if the test failed) in place of `"test"`, to the standard
38
+ output stream after the forked child process finishes.
39
+
40
+ The standard output and error streams of the forked child process are
41
+ redirected to a file whose path and name are the same as that of the test
42
+ file being run by the forked child process but with ".log" appended.
43
+
44
+ `["stop"]`
45
+ Stops all tests that are currently running and prints the given command line
46
+ to the standard output stream.
47
+
48
+ `["quit"]`
49
+ Stops all tests that are currently running and exits.
50
+
51
+ OPTIONS
52
+ -------
53
+
54
+ `-h`, `--help`
55
+ Display this help manual using man(1).
56
+
57
+ FILES
58
+ -----
59
+
60
+ `.testr.rb`
61
+ Ruby script in the directory where testr(1) is run.
62
+
63
+ SEE ALSO
64
+ --------
65
+
66
+ testr(1), testr-driver(1), testr-master(1), testr-herald(1)
67
+
68
+ =end =========================================================================
69
+
70
+ $0 = File.basename(__FILE__)
71
+
72
+ require 'binman'
73
+ BinMan.help
74
+
2
75
  require 'testr/master'
3
76
  TestR::Master.loop
77
+
4
78
  Process.waitall
5
79
  raise SystemExit # prevent empty test suite from running in the master process
data/lib/testr/client.rb CHANGED
@@ -28,11 +28,6 @@ module Client
28
28
  @io.puts JSON.dump(command)
29
29
  end
30
30
  end
31
-
32
- def quit
33
- send [:quit]
34
- super
35
- end
36
31
  end
37
32
 
38
33
  end
data/lib/testr/master.rb CHANGED
@@ -22,8 +22,7 @@ module Master
22
22
 
23
23
  def test test_file, test_names
24
24
  # throttle forking rate to meet the maximum concurrent workers limit
25
- # NOTE: the next SIGCHLD signal will wake us from this eternal sleep
26
- sleep until @command_by_worker_pid.size < Config.max_forked_workers
25
+ sleep 1 until @command_by_worker_pid.size < Config.max_forked_workers
27
26
 
28
27
  log_file = test_file + '.log'
29
28
  worker_number = @worker_number_pool.shift
data/lib/testr/server.rb CHANGED
@@ -28,5 +28,9 @@ module Server
28
28
  end
29
29
  end
30
30
 
31
+ def self.extended target
32
+ trap(:SIGTERM){ target.quit }
33
+ end
34
+
31
35
  end
32
36
  end
data/lib/testr/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module TestR
2
- VERSION = "14.0.3"
2
+ VERSION = "14.1.0"
3
3
  end
@@ -0,0 +1,47 @@
1
+ .TH TESTR-DRIVER 1 "2011-11-03" "14.1.0" "TestR User Manuals"
2
+ .SH NAME
3
+ .PP
4
+ testr-driver \- tells master to run tests and keeps track of test results
5
+ .SH SYNOPSIS
6
+ .PP
7
+ \fBtestr-driver\fP [\fIOPTION\fP]...
8
+ .SH DESCRIPTION
9
+ .PP
10
+ This program reads the following single-line commands (JSON arrays) from its
11
+ standard input stream and performs the respective actions as described below.
12
+ It also funnels the standard output stream of
13
+ .BR testr-master (1)
14
+ into its own.
15
+ .TP
16
+ \fB["run_all_test_files"]\fP
17
+ Runs all test files found within and beneath the current working directory.
18
+ .TP
19
+ \fB["stop_running_test_files"]\fP
20
+ Stops any test files that are currently running.
21
+ .TP
22
+ \fB["rerun_passed_test_files"]\fP
23
+ Runs all test files that have passed during their most recent run.
24
+ .TP
25
+ \fB["reabsorb_overhead_files"]\fP
26
+ Stops any test files that are currently running, reabsorbs the test
27
+ execution overhead, and resumes running those interrupted test files.
28
+ .TP
29
+ \fB["quit"]\fP
30
+ Stops all tests that are currently running and exits.
31
+ .SH OPTIONS
32
+ .TP
33
+ \fB-h\fP, \fB--help\fP
34
+ Display this help manual using
35
+ .BR man (1).
36
+ .SH FILES
37
+ .TP
38
+ \fB.testr.rb\fP
39
+ Ruby script in the directory where
40
+ .BR testr (1)
41
+ is run.
42
+ .SH SEE ALSO
43
+ .PP
44
+ .BR testr (1),
45
+ .BR testr-driver (1),
46
+ .BR testr-master (1),
47
+ .BR testr-herald (1)
@@ -0,0 +1,22 @@
1
+ .TH TESTR-HERALD 1 "2011-11-03" "14.1.0" "TestR User Manuals"
2
+ .SH NAME
3
+ .PP
4
+ testr-herald \- monitors current directory tree and reports modified files
5
+ .SH SYNOPSIS
6
+ .PP
7
+ \fBtestr-herald\fP [\fIOPTION\fP]...
8
+ .SH DESCRIPTION
9
+ .PP
10
+ This program monitors the current working directory and prints relative paths
11
+ of modified files, one per line, to the standard output stream.
12
+ .SH OPTIONS
13
+ .TP
14
+ \fB-h\fP, \fB--help\fP
15
+ Display this help manual using
16
+ .BR man (1).
17
+ .SH SEE ALSO
18
+ .PP
19
+ .BR testr (1),
20
+ .BR testr-driver (1),
21
+ .BR testr-master (1),
22
+ .BR testr-herald (1)
@@ -0,0 +1,56 @@
1
+ .TH TESTR-MASTER 1 "2011-11-03" "14.1.0" "TestR User Manuals"
2
+ .SH NAME
3
+ .PP
4
+ testr-master \- absorbs test execution overhead and forks to run your tests
5
+ .SH SYNOPSIS
6
+ .PP
7
+ \fBtestr-master\fP [\fIOPTION\fP]...
8
+ .SH DESCRIPTION
9
+ .PP
10
+ This program reads the following single-line commands (JSON arrays) from its
11
+ standard input stream and performs the respective actions as described below.
12
+ .TP
13
+ \fB["load",\fP \fIpaths\fP\fB,\fP \fIfiles\fP\fB]\fP
14
+ Adds the given array of \fIpaths\fP to Ruby's $LOAD_PATH, loads the given array
15
+ of \fIfiles\fP after removing their ".rb" file extension if present, and prints
16
+ the given command line to the standard output stream.
17
+ .TP
18
+ \fB["test",\fP \fItest_file\fP\fB,\fP \fItest_names\fP\fB]\fP
19
+ Runs the given \fItest_file\fP in a forked child process while instructing your
20
+ chosen unit testing framework (loaded by your test execution overhead) to
21
+ only run those tests that are named in the given array of \fItest_names\fP.
22
+ .IP
23
+ Prints the given command line to the standard output stream immediately
24
+ after forking the child process.
25
+ .IP
26
+ Prints the given command line, modified with \fB"pass"\fP (if the test passed)
27
+ or \fB"fail"\fP (if the test failed) in place of \fB"test"\fP, to the standard
28
+ output stream after the forked child process finishes.
29
+ .IP
30
+ The standard output and error streams of the forked child process are
31
+ redirected to a file whose path and name are the same as that of the test
32
+ file being run by the forked child process but with ".log" appended.
33
+ .TP
34
+ \fB["stop"]\fP
35
+ Stops all tests that are currently running and prints the given command line
36
+ to the standard output stream.
37
+ .TP
38
+ \fB["quit"]\fP
39
+ Stops all tests that are currently running and exits.
40
+ .SH OPTIONS
41
+ .TP
42
+ \fB-h\fP, \fB--help\fP
43
+ Display this help manual using
44
+ .BR man (1).
45
+ .SH FILES
46
+ .TP
47
+ \fB.testr.rb\fP
48
+ Ruby script in the directory where
49
+ .BR testr (1)
50
+ is run.
51
+ .SH SEE ALSO
52
+ .PP
53
+ .BR testr (1),
54
+ .BR testr-driver (1),
55
+ .BR testr-master (1),
56
+ .BR testr-herald (1)
data/man/man1/testr.1 ADDED
@@ -0,0 +1,40 @@
1
+ .TH TESTR 1 "2011-11-03" "14.1.0" "TestR User Manuals"
2
+ .SH NAME
3
+ .PP
4
+ testr \- Continuous testing tool for Ruby
5
+ .SH SYNOPSIS
6
+ .PP
7
+ \fBtestr\fP [\fIOPTION\fP]...
8
+ .SH DESCRIPTION
9
+ .PP
10
+ This program is a simple command-line user interface for
11
+ .BR testr-driver (1).
12
+ It
13
+ demonstrates how the components of TestR work together and also serves as an
14
+ example of how you can create your own TestR user interface.
15
+ .PP
16
+ When run, it presents you with a menu of single-character commands that you
17
+ can enter, loads the test execution overhead into
18
+ .BR testr-master (1),
19
+ and
20
+ finally notifies you when the master is ready to run test files.
21
+ .PP
22
+ It also launches
23
+ .BR testr-herald (1)
24
+ alongside
25
+ .BR testr-master (1).
26
+ When the herald
27
+ reports a modified file that belongs to the test execution overhead, this
28
+ program notifies you accordingly and then replaces the current master with a
29
+ new one that will absorb the modified test execution overhead into itself.
30
+ .SH OPTIONS
31
+ .TP
32
+ \fB-h\fP, \fB--help\fP
33
+ Display this help manual using
34
+ .BR man (1).
35
+ .SH SEE ALSO
36
+ .PP
37
+ .BR testr (1),
38
+ .BR testr-driver (1),
39
+ .BR testr-master (1),
40
+ .BR testr-herald (1)
data/testr.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |s|
11
11
  s.summary = "Continuous testing tool for Ruby"
12
12
  s.description = nil
13
13
 
14
- s.files = `git ls-files`.split("\n")
14
+ s.files = `git ls-files`.split("\n") + Dir['man/**/*']
15
15
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
16
16
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
17
  s.require_paths = ["lib"]
@@ -22,4 +22,13 @@ Gem::Specification.new do |s|
22
22
  s.add_runtime_dependency "json", ">= 1.6.1"
23
23
  s.add_runtime_dependency "guard", ">= 0.8.4"
24
24
  s.add_runtime_dependency "diff-lcs", ">= 1.1.2"
25
+
26
+ # add binman and all of its development dependencies
27
+ binman_gem = ['binman', '~> 1']
28
+ s.add_runtime_dependency(*binman_gem)
29
+ binman_vers = Gem::Dependency.new(*binman_gem)
30
+ binman_spec = Gem::SpecFetcher.fetcher.fetch(binman_vers).flatten.first
31
+ binman_spec.development_dependencies.unshift(binman_vers).each do |dep|
32
+ s.add_development_dependency dep.name, dep.requirements_list
33
+ end
25
34
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: testr
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.0.3
4
+ version: 14.1.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,11 +13,11 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2011-10-12 00:00:00.000000000 Z
16
+ date: 2011-11-04 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: json
20
- requirement: &15214300 !ruby/object:Gem::Requirement
20
+ requirement: &23388540 !ruby/object:Gem::Requirement
21
21
  none: false
22
22
  requirements:
23
23
  - - ! '>='
@@ -25,10 +25,10 @@ dependencies:
25
25
  version: 1.6.1
26
26
  type: :runtime
27
27
  prerelease: false
28
- version_requirements: *15214300
28
+ version_requirements: *23388540
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: guard
31
- requirement: &15213320 !ruby/object:Gem::Requirement
31
+ requirement: &23387820 !ruby/object:Gem::Requirement
32
32
  none: false
33
33
  requirements:
34
34
  - - ! '>='
@@ -36,10 +36,10 @@ dependencies:
36
36
  version: 0.8.4
37
37
  type: :runtime
38
38
  prerelease: false
39
- version_requirements: *15213320
39
+ version_requirements: *23387820
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: diff-lcs
42
- requirement: &15212380 !ruby/object:Gem::Requirement
42
+ requirement: &23386940 !ruby/object:Gem::Requirement
43
43
  none: false
44
44
  requirements:
45
45
  - - ! '>='
@@ -47,7 +47,40 @@ dependencies:
47
47
  version: 1.1.2
48
48
  type: :runtime
49
49
  prerelease: false
50
- version_requirements: *15212380
50
+ version_requirements: *23386940
51
+ - !ruby/object:Gem::Dependency
52
+ name: binman
53
+ requirement: &23386420 !ruby/object:Gem::Requirement
54
+ none: false
55
+ requirements:
56
+ - - ~>
57
+ - !ruby/object:Gem::Version
58
+ version: '1'
59
+ type: :runtime
60
+ prerelease: false
61
+ version_requirements: *23386420
62
+ - !ruby/object:Gem::Dependency
63
+ name: binman
64
+ requirement: &25642060 !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: '1'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: *25642060
73
+ - !ruby/object:Gem::Dependency
74
+ name: redcarpet-manpage
75
+ requirement: &25641520 !ruby/object:Gem::Requirement
76
+ none: false
77
+ requirements:
78
+ - - ! '>='
79
+ - !ruby/object:Gem::Version
80
+ version: 0.0.1
81
+ type: :development
82
+ prerelease: false
83
+ version_requirements: *25641520
51
84
  description: ''
52
85
  email:
53
86
  - sunaku@gmail.com
@@ -82,6 +115,10 @@ files:
82
115
  - lib/testr/server.rb
83
116
  - lib/testr/version.rb
84
117
  - testr.gemspec
118
+ - man/man1/testr-driver.1
119
+ - man/man1/testr-master.1
120
+ - man/man1/testr-herald.1
121
+ - man/man1/testr.1
85
122
  homepage: http://github.com/sunaku/testr
86
123
  licenses: []
87
124
  post_install_message:
@@ -107,3 +144,4 @@ signing_key:
107
144
  specification_version: 3
108
145
  summary: Continuous testing tool for Ruby
109
146
  test_files: []
147
+ has_rdoc: