testr 14.0.3 → 14.1.0

Sign up to get free protection for your applications and to get access to all the features.
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: