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 +33 -4
- data/README.markdown +22 -7
- data/Rakefile +1 -0
- data/bin/testr +51 -1
- data/bin/testr-driver +63 -0
- data/bin/testr-herald +39 -1
- data/bin/testr-master +74 -0
- data/lib/testr/client.rb +0 -5
- data/lib/testr/master.rb +1 -2
- data/lib/testr/server.rb +4 -0
- data/lib/testr/version.rb +1 -1
- data/man/man1/testr-driver.1 +47 -0
- data/man/man1/testr-herald.1 +22 -0
- data/man/man1/testr-master.1 +56 -0
- data/man/man1/testr.1 +40 -0
- data/testr.gemspec +10 -1
- metadata +46 -8
data/HISTORY.markdown
CHANGED
@@ -1,15 +1,44 @@
|
|
1
1
|
------------------------------------------------------------------------------
|
2
|
-
Version 14.0
|
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
|
-
*
|
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
|
-
*
|
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
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
|
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
|
-
|
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
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
|
-
|
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
data/lib/testr/version.rb
CHANGED
@@ -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
|
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-
|
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: &
|
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: *
|
28
|
+
version_requirements: *23388540
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: guard
|
31
|
-
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: *
|
39
|
+
version_requirements: *23387820
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: diff-lcs
|
42
|
-
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: *
|
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:
|