guard-test 0.8.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +53 -36
- data/README.md +41 -67
- data/lib/guard/test.rb +4 -3
- data/lib/guard/test/runner.rb +58 -35
- data/lib/guard/test/version.rb +1 -1
- metadata +30 -36
- checksums.yaml +0 -7
- data/lib/guard/test.rbc +0 -1353
- data/lib/guard/test/guard_test_runner.rbc +0 -1257
- data/lib/guard/test/inspector.rbc +0 -1396
- data/lib/guard/test/notifier.rbc +0 -1055
- data/lib/guard/test/runner.rbc +0 -1638
- data/lib/guard/test/version.rbc +0 -253
data/CHANGELOG.md
CHANGED
@@ -1,115 +1,129 @@
|
|
1
|
+
## git master
|
2
|
+
|
3
|
+
Nothing here.
|
4
|
+
|
5
|
+
## 1.0.0 - May 8, 2013
|
6
|
+
|
7
|
+
### New feature
|
8
|
+
|
9
|
+
- [#40][] & [#41][]: Add support for running tests via `spring`. ([@pgaertig][])
|
10
|
+
|
11
|
+
### Improvements
|
12
|
+
|
13
|
+
* Get rid of `autoload`. ([@rymai][])
|
14
|
+
|
1
15
|
## 0.8.0 - March 24, 2013
|
2
16
|
|
3
|
-
### New feature
|
17
|
+
### New feature
|
4
18
|
|
5
19
|
- [#38][]: Add support for running tests via `zeus`. ([@djmaze][])
|
6
20
|
|
7
21
|
## 0.7.0 - November 6, 2012
|
8
22
|
|
9
|
-
### New feature
|
23
|
+
### New feature
|
10
24
|
|
11
25
|
- [#35][]: Support `include:` option to extend the load path of the test runner. ([@amiel][])
|
12
26
|
|
13
27
|
## 0.6.0 - November 3, 2012
|
14
28
|
|
15
|
-
### New feature
|
29
|
+
### New feature
|
16
30
|
|
17
31
|
- [#34][]: Support for `*_tests.rb`. ([@pastorius][])
|
18
32
|
|
19
33
|
## 0.5.0 - June 2, 2012
|
20
34
|
|
21
|
-
### Bug fix
|
35
|
+
### Bug fix
|
22
36
|
|
23
37
|
- [#24][]: Add note for Rails projects using profile/benchmark tests in README. ([@coderjoe][])
|
24
38
|
|
25
|
-
### Changes
|
39
|
+
### Changes
|
26
40
|
|
27
|
-
-
|
41
|
+
- Updat for Guard 1.1. ([@rymai][])
|
28
42
|
|
29
|
-
### New feature
|
43
|
+
### New feature
|
30
44
|
|
31
45
|
- [#20][]: Add the `:rubygems` options for projects that don't use Bundler. ([@rymai][])
|
32
46
|
|
33
47
|
## 0.4.3 - December 19, 2011
|
34
48
|
|
35
|
-
### Bug fix
|
49
|
+
### Bug fix
|
36
50
|
|
37
|
-
- [#21][]: Guard::Test::Notifier.notify
|
51
|
+
- [#21][]: `Guard::Test::Notifier.notify` did not use :failed image if test results included errors but NO failures. ([@carlost][])
|
38
52
|
|
39
53
|
## 0.4.2 - November 19, 2011
|
40
54
|
|
41
|
-
### Bug fix
|
55
|
+
### Bug fix
|
42
56
|
|
43
|
-
- [#19][]:
|
57
|
+
- [#19][]: Fix "superclass mismatch for class Test (TypeError)" thanks to [@gertas][]. ([@rymai][])
|
44
58
|
|
45
59
|
## 0.4.1 - November 3, 2011
|
46
60
|
|
47
|
-
### Bugs fixes
|
61
|
+
### Bugs fixes
|
48
62
|
|
49
|
-
- [#18][]:
|
50
|
-
- [#11][]:
|
63
|
+
- [#18][]: Fix a conflict with test_benchmark that was preventing guard-test from running. ([@rymai][])
|
64
|
+
- [#11][]: Fix a "No such file to load -- guard/notifier" when running guard without bundler. ([@rymai][])
|
51
65
|
|
52
66
|
## 0.4.0 - September 29, 2011
|
53
67
|
|
54
|
-
### Regression
|
68
|
+
### Regression
|
55
69
|
|
56
|
-
-
|
70
|
+
- Remove support of [turn](https://github.com/guard/guard-spork) gem since "Turn is no longer compatible with TestUnit 2.0+. TestUnit and MiniTest are deverging and after some consideration it was decided that Turn's goal is to support Ruby's native test framework, whatever it may be." quoted from Turn's [release.txt](https://github.com/TwP/turn/blob/master/Release.txt). ([@rymai][])
|
57
71
|
|
58
|
-
### New feature
|
72
|
+
### New feature
|
59
73
|
|
60
74
|
- New `:drb` option enabling the use of [`spork-testunit`](https://github.com/timcharper/spork-testunit) gem (be sure to use [guard-spork](https://github.com/guard/guard-spork) as well). ([@rymai][])
|
61
75
|
|
62
76
|
## 0.3.1 - September 11, 2011
|
63
77
|
|
64
|
-
### New feature
|
78
|
+
### New feature
|
65
79
|
|
66
80
|
- [#13][]: New `test_paths` option to look for test files under other paths than `test`. ([@Ask11][])
|
67
81
|
|
68
|
-
### Improvement
|
82
|
+
### Improvement
|
69
83
|
|
70
84
|
- [#15][]: Simplify some checks. ([@dasch][])
|
71
85
|
|
72
86
|
## 0.3.0 - June 14, 2011
|
73
87
|
|
74
|
-
### Improvement
|
88
|
+
### Improvement
|
75
89
|
|
76
90
|
- Internal cleaning. ([@rymai][])
|
77
91
|
|
78
92
|
## 0.3.0.rc5 - June 9, 2011
|
79
93
|
|
80
|
-
### Bugs fixes
|
94
|
+
### Bugs fixes
|
81
95
|
|
82
|
-
-
|
83
|
-
-
|
84
|
-
-
|
96
|
+
- Fix bug that was preventing tests from running. ([@rymai][])
|
97
|
+
- Fix the `fastfail` runner that was displaying a green dot even for a failing test. ([@rymai][])
|
98
|
+
- Remove the `:notification` option. Use the new Guard method instead. ([@rymai][])
|
85
99
|
|
86
|
-
### New feature
|
100
|
+
### New feature
|
87
101
|
|
88
102
|
- Turn seems to work fine now... ([@rymai][])
|
89
103
|
|
90
|
-
### Improvement
|
104
|
+
### Improvement
|
91
105
|
|
92
|
-
- Consider
|
106
|
+
- Consider `test_*.rb` as test files as well. ([@uk-ar][])
|
93
107
|
|
94
108
|
## 0.3.0.rc4 - June 3, 2011
|
95
109
|
|
96
|
-
### Bugs fix
|
110
|
+
### Bugs fix
|
97
111
|
|
98
112
|
- Add a require that was making the guard be fired by Guard! :'( ([@rymai][])
|
99
113
|
|
100
114
|
## 0.3.0.rc3 - June 3, 2011
|
101
115
|
|
102
|
-
### Bugs fix
|
116
|
+
### Bugs fix
|
103
117
|
|
104
118
|
- Actually make the tests run. ([@rymai][])
|
105
119
|
|
106
|
-
### Regression
|
120
|
+
### Regression
|
107
121
|
|
108
122
|
- Turn doesn't want to run, so remove sentences that say that it is supported for now. Note: The code is still here, only the command line doesn't seem to output anything... ([@rymai][])
|
109
123
|
|
110
124
|
## 0.3.0.rc2 - June 2, 2011
|
111
125
|
|
112
|
-
### New features
|
126
|
+
### New features
|
113
127
|
|
114
128
|
- New `:cli` option (nil by default) to pass arbitrary CLI arguments to the Ruby/Turn command that runs the tests. ([@rymai][])
|
115
129
|
- New `:notification` option (true by default) to disable notification (Growl/Inotify). ([@rymai][])
|
@@ -117,24 +131,24 @@
|
|
117
131
|
- New `:all_after_pass` option (true by default) to run all tests after changed tests pass. ([@rymai][])
|
118
132
|
- New `:keep_failed` option (true by default) to keep failed tests until them pass. ([@rymai][])
|
119
133
|
|
120
|
-
### Improvements
|
134
|
+
### Improvements
|
121
135
|
|
122
|
-
-
|
136
|
+
- Add compatibility with 1.8.6, 1.8.7, 1.9.2, REE, Rubinius and JRuby. ([@rymai][])
|
123
137
|
- Internal changes inspired by [guard-minitest](https://github.com/guard/guard-minitest). ([@rymai][])
|
124
138
|
|
125
139
|
## 0.1.6 - January 24, 2011
|
126
140
|
|
127
|
-
### Bugs fix
|
141
|
+
### Bugs fix
|
128
142
|
|
129
143
|
- [#2][]: Fixed a bug introduced in 0.1.5 where test/ was not added to the $LOAD_PATH. ([@rymai][])
|
130
144
|
|
131
145
|
## 0.1.5 - January 21, 2011
|
132
146
|
|
133
|
-
-
|
147
|
+
- Update gem dependencies. ([@rymai][])
|
134
148
|
|
135
149
|
## 0.1.4 - December 15, 2010
|
136
150
|
|
137
|
-
### Bugs fix
|
151
|
+
### Bugs fix
|
138
152
|
|
139
153
|
- [#1][]: Include errors count to determine the "flag" to display in notification. ([@gregorymostizky][])
|
140
154
|
|
@@ -152,6 +166,8 @@
|
|
152
166
|
[#34]: https://github.com/guard/guard/issues/34
|
153
167
|
[#35]: https://github.com/guard/guard/issues/35
|
154
168
|
[#38]: https://github.com/guard/guard/issues/38
|
169
|
+
[#40]: https://github.com/guard/guard/issues/40
|
170
|
+
[#41]: https://github.com/guard/guard/issues/41
|
155
171
|
[@Ask11]: https://github.com/Ask11
|
156
172
|
[@amiel]: https://github.com/amiel
|
157
173
|
[@carlost]: https://github.com/carlost
|
@@ -162,5 +178,6 @@
|
|
162
178
|
[@gregorymostizky]: https://github.com/gregorymostizky
|
163
179
|
[@jgrau]: https://github.com/jgrau
|
164
180
|
[@pastorius]: https://github.com/pastorius
|
181
|
+
[@pgaertig]: https://github.com/pgaertig
|
165
182
|
[@rymai]: https://github.com/rymai
|
166
183
|
[@uk-ar]: https://github.com/uk-ar
|
data/README.md
CHANGED
@@ -1,43 +1,26 @@
|
|
1
|
-
# Guard::Test
|
1
|
+
# Guard::Test
|
2
|
+
[![Gem Version](https://badge.fury.io/rb/guard-test.png)](http://badge.fury.io/rb/guard-test) [![Build Status](https://travis-ci.org/guard/guard-test.png?branch=master)](https://travis-ci.org/guard/guard-test) [![Dependency Status](https://gemnasium.com/guard/guard-test.png)](https://gemnasium.com/guard/guard-test) [![Code Climate](https://codeclimate.com/github/guard/guard-test.png)](https://codeclimate.com/github/guard/guard-test) [![Coverage Status](https://coveralls.io/repos/guard/guard-test/badge.png?branch=master)](https://coveralls.io/r/guard/guard-test)
|
2
3
|
|
3
4
|
Test::Unit guard allows to automatically & intelligently launch tests when files are modified or created.
|
4
5
|
|
5
|
-
|
6
|
-
|
7
|
-
## Features
|
8
|
-
|
9
|
-
- Compatible with test-unit 2.
|
10
|
-
- Tested on Ruby 1.8.7, 1.9.2, REE, Rubinius and JRuby.
|
6
|
+
* Compatible with Test::Unit 2.
|
7
|
+
* Tested against Ruby 1.8.7, 1.9.3, REE, Rubinius & JRuby.
|
11
8
|
|
12
9
|
## Install
|
13
10
|
|
14
|
-
Please be sure to have [Guard](https://github.com/guard/guard) installed before
|
11
|
+
Please be sure to have [Guard](https://github.com/guard/guard) installed before continuing.
|
15
12
|
|
16
|
-
|
13
|
+
Add the gem to your Gemfile (inside the `:development` or `:tool` group):
|
17
14
|
|
18
|
-
```ruby
|
19
|
-
group :
|
15
|
+
``` ruby
|
16
|
+
group :development do
|
20
17
|
gem 'guard-test'
|
21
18
|
end
|
22
19
|
```
|
23
20
|
|
24
|
-
|
25
|
-
|
26
|
-
and run:
|
27
|
-
|
28
|
-
```bash
|
29
|
-
$ bundle install
|
30
|
-
```
|
31
|
-
|
32
|
-
or manually install the gem:
|
33
|
-
|
34
|
-
```bash
|
35
|
-
$ gem install guard-test
|
36
|
-
```
|
21
|
+
Add guard definition to your Guardfile by running this command:
|
37
22
|
|
38
|
-
|
39
|
-
|
40
|
-
```bash
|
23
|
+
``` bash
|
41
24
|
$ guard init test
|
42
25
|
```
|
43
26
|
|
@@ -57,7 +40,7 @@ Specify ruby-prof as application's dependency in Gemfile to run benchmarks.
|
|
57
40
|
Rails automatically generates a performance test stub in the `test/performance` directory which can trigger this error.
|
58
41
|
Either add `ruby-prof` to your `Gemfile` (inside the `test` group):
|
59
42
|
|
60
|
-
```ruby
|
43
|
+
``` ruby
|
61
44
|
group :test do
|
62
45
|
gem 'ruby-prof'
|
63
46
|
end
|
@@ -69,9 +52,9 @@ Or remove the test if it isn't necessary.
|
|
69
52
|
|
70
53
|
Please read the [Guard usage doc](https://github.com/guard/guard#readme).
|
71
54
|
|
72
|
-
|
55
|
+
By default, Guard::Test watch for files matching `test_*.rb` or `*_test{s,}.rb` in the `test` directory (this directory can be changed with the `test_paths` option, see below).
|
73
56
|
|
74
|
-
|
57
|
+
## Guardfile
|
75
58
|
|
76
59
|
See the [template Guardfile](https://github.com/guard/guard-test/blob/master/lib/guard/test/templates/Guardfile) for some examples.
|
77
60
|
|
@@ -83,17 +66,20 @@ Please read the [Guard documentation](https://github.com/guard/guard#readme) for
|
|
83
66
|
|
84
67
|
### Available options
|
85
68
|
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
69
|
+
``` ruby
|
70
|
+
:bundler => false # Whether or not to use `bundle exec` to run tests, default: true (if a you have a Gemfile in the current directory)
|
71
|
+
:rubygems => true # Whether or not to require rubygems (if bundler isn't used) when running the tests, default: false
|
72
|
+
:rvm => ['1.9.3', 'jruby'] # Directly run your specs against multiple Rubies, default: nil
|
73
|
+
:drb => true # Run your tests with [`spork-testunit`](https://github.com/timcharper/spork-testunit), default: false
|
74
|
+
:zeus => true # Run your tests with [`zeus`](https://github.com/burke/zeus), default: false
|
75
|
+
:spring => true # Run your tests with [`spring`](https://github.com/jonleighton/spring), default: false
|
76
|
+
:include => ['foo', 'bar'] # Pass arbitrary include paths to the command that runs the tests, default: ['test']
|
77
|
+
:cli => 'color' # Pass arbitrary CLI arguments to the command that runs the tests, default: nil
|
78
|
+
:all_on_start => false # Run all tests on Guard startup, default: true.
|
79
|
+
:all_after_pass => false # Run all tests after the current run tests pass, default: true
|
80
|
+
:keep_failed => false # Re-run failing tests until they pass, default: true
|
81
|
+
:test_paths => ['spec'] # Array of paths that where are located the test files, default: ['test']
|
82
|
+
```
|
97
83
|
|
98
84
|
#### `drb` option
|
99
85
|
|
@@ -101,43 +87,31 @@ When true, notifications are disabled. This might be fixed in future releases.
|
|
101
87
|
|
102
88
|
#### `zeus` option
|
103
89
|
|
104
|
-
When true, the `include` option is disregarded, as it does not work with `zeus`' test runner.
|
105
|
-
|
106
|
-
The zeus server process (`zeus start`) must already be running in another terminal.
|
90
|
+
When true, the `include` option is disregarded, as it does not work with `zeus`' test runner.
|
107
91
|
|
108
|
-
|
109
|
-
|
110
|
-
By default, guard-test will only look for test files within `test/` in your project root. You can add any paths using the `:test_paths` option:
|
111
|
-
|
112
|
-
```ruby
|
113
|
-
guard :test, :test_paths => ['test', 'vendor/plugins/recaptcha/test', 'any/path/test'] do
|
114
|
-
# ...
|
115
|
-
end
|
116
|
-
```
|
92
|
+
The zeus server process (`zeus start`) must already be running in another terminal (you can use [guard-zeus](http://rubygems.org/gems/guard-zeus) for that).
|
117
93
|
|
118
94
|
## Development
|
119
95
|
|
120
|
-
|
121
|
-
|
96
|
+
* Documentation hosted at [RubyDoc](http://rubydoc.info/gems/guard-test/frames).
|
97
|
+
* Source hosted at [GitHub](https://github.com/guard/guard-test).
|
122
98
|
|
123
|
-
Pull requests are very welcome! Please try to follow these simple
|
99
|
+
Pull requests are very welcome! Please try to follow these simple rules if applicable:
|
124
100
|
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
-
|
101
|
+
* Please create a topic branch for every separate change you make.
|
102
|
+
* Make sure your patches are well tested. All specs must pass on [Travis CI](https://travis-ci.org/guard/guard-test).
|
103
|
+
* Update the [Yard](http://yardoc.org/) documentation.
|
104
|
+
* Update the [README](https://github.com/guard/guard-test/blob/master/README.md).
|
105
|
+
* Update the [CHANGELOG](https://github.com/guard/guard-test/blob/master/CHANGELOG.md) for noteworthy changes (don't forget to run `bundle exec pimpmychangelog` and watch the magic happen)!
|
106
|
+
* Please **do not change** the version number.
|
130
107
|
|
131
|
-
For questions please join us
|
108
|
+
For questions please join us in our [Google group](http://groups.google.com/group/guard-dev) or on
|
109
|
+
`#guard` (irc.freenode.net).
|
132
110
|
|
133
111
|
## Author
|
134
112
|
|
135
|
-
[Rémy Coutable](https://github.com/rymai)
|
113
|
+
[Rémy Coutable](https://github.com/rymai) ([@rymai](http://twitter.com/rymai), [rymai.me](http://rymai.me))
|
136
114
|
|
137
115
|
## Contributors
|
138
116
|
|
139
117
|
https://github.com/guard/guard-test/contributors
|
140
|
-
|
141
|
-
## Kudos
|
142
|
-
|
143
|
-
Many thanks to [Thibaud Guillaume-Gentil](https://github.com/thibaudgg) for creating the excellent [Guard](https://github.com/guard/guard) gem.
|
data/lib/guard/test.rb
CHANGED
@@ -7,8 +7,8 @@ require 'test/unit/version'
|
|
7
7
|
module Guard
|
8
8
|
class Test < Guard
|
9
9
|
|
10
|
-
|
11
|
-
|
10
|
+
require 'guard/test/runner'
|
11
|
+
require 'guard/test/inspector'
|
12
12
|
|
13
13
|
def initialize(watchers = [], options = {})
|
14
14
|
super
|
@@ -25,7 +25,8 @@ module Guard
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def start
|
28
|
-
::Guard::UI.info("Guard::Test #{TestVersion::VERSION} is running,
|
28
|
+
::Guard::UI.info("Guard::Test #{TestVersion::VERSION} is running, " +
|
29
|
+
"with Test::Unit #{::Test::Unit::VERSION}!", :reset => true)
|
29
30
|
run_all if @options[:all_on_start]
|
30
31
|
end
|
31
32
|
|
data/lib/guard/test/runner.rb
CHANGED
@@ -1,10 +1,11 @@
|
|
1
1
|
# encoding: utf-8
|
2
|
-
|
3
2
|
module Guard
|
4
3
|
class Test
|
5
4
|
class Runner
|
6
5
|
|
7
|
-
|
6
|
+
attr_reader :options
|
7
|
+
|
8
|
+
def initialize(opts = {})
|
8
9
|
@options = {
|
9
10
|
:bundler => File.exist?("#{Dir.pwd}/Gemfile"),
|
10
11
|
:rubygems => false,
|
@@ -12,32 +13,33 @@ module Guard
|
|
12
13
|
:include => ['test'],
|
13
14
|
:drb => false,
|
14
15
|
:zeus => false,
|
16
|
+
:spring => false,
|
15
17
|
:cli => ''
|
16
|
-
}.merge(
|
18
|
+
}.merge(opts)
|
17
19
|
end
|
18
20
|
|
19
|
-
def run(paths,
|
21
|
+
def run(paths, opts = {})
|
20
22
|
return true if paths.empty?
|
21
23
|
|
22
|
-
::Guard::UI.info(
|
24
|
+
::Guard::UI.info(opts[:message] || "Running: #{paths.join(' ')}", :reset => true)
|
23
25
|
|
24
26
|
system(test_unit_command(paths))
|
25
27
|
end
|
26
28
|
|
27
29
|
def bundler?
|
28
30
|
if @bundler.nil?
|
29
|
-
@bundler =
|
31
|
+
@bundler = options[:bundler] && !drb? && !zeus? && !spring?
|
30
32
|
end
|
31
33
|
@bundler
|
32
34
|
end
|
33
35
|
|
34
36
|
def rubygems?
|
35
|
-
!bundler? && !zeus? &&
|
37
|
+
!bundler? && !zeus? && !spring? && options[:rubygems]
|
36
38
|
end
|
37
39
|
|
38
40
|
def drb?
|
39
41
|
if @drb.nil?
|
40
|
-
@drb =
|
42
|
+
@drb = options[:drb]
|
41
43
|
begin
|
42
44
|
require 'spork-testunit'
|
43
45
|
rescue LoadError
|
@@ -49,45 +51,66 @@ module Guard
|
|
49
51
|
|
50
52
|
def zeus?
|
51
53
|
if @zeus.nil?
|
52
|
-
@zeus =
|
54
|
+
@zeus = options[:zeus]
|
53
55
|
::Guard::UI.info('Using zeus to run the tests') if @zeus
|
54
56
|
end
|
55
57
|
@zeus
|
56
58
|
end
|
57
|
-
|
59
|
+
|
60
|
+
def spring?
|
61
|
+
if @spring.nil?
|
62
|
+
@spring = options[:spring]
|
63
|
+
::Guard::UI.info('Using spring to run the tests') if @spring
|
64
|
+
end
|
65
|
+
@spring
|
66
|
+
end
|
67
|
+
|
58
68
|
private
|
59
69
|
|
60
70
|
def test_unit_command(paths)
|
61
|
-
cmd_parts =
|
62
|
-
cmd_parts
|
63
|
-
cmd_parts
|
64
|
-
cmd_parts
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
else
|
70
|
-
'ruby'
|
71
|
-
end
|
72
|
-
cmd_parts << Array(@options[:include]).map { |path| "-I#{path}" } unless zeus?
|
73
|
-
cmd_parts << '-r bundler/setup' if bundler?
|
74
|
-
cmd_parts << '-rubygems' if rubygems?
|
75
|
-
|
76
|
-
unless drb? || zeus?
|
77
|
-
cmd_parts << "-r #{File.expand_path("../guard_test_runner", __FILE__)}"
|
78
|
-
cmd_parts << "-e \"%w[#{paths.join(' ')}].each { |p| load p }\""
|
79
|
-
end
|
71
|
+
cmd_parts = executables
|
72
|
+
cmd_parts.concat(includes_and_requires(paths))
|
73
|
+
cmd_parts.concat(test_files_list(paths))
|
74
|
+
cmd_parts.concat(command_options)
|
75
|
+
cmd_parts << options[:cli]
|
76
|
+
|
77
|
+
cmd_parts.compact.join(' ').strip
|
78
|
+
end
|
80
79
|
|
81
|
-
|
80
|
+
def executables
|
81
|
+
parts = []
|
82
|
+
parts << "rvm #{options[:rvm].join(',')} exec" unless options[:rvm].empty?
|
83
|
+
parts << 'bundle exec' if bundler?
|
84
|
+
parts << case true
|
85
|
+
when drb? then 'testdrb'
|
86
|
+
when zeus? then 'zeus test'
|
87
|
+
when spring? then 'spring testunit'
|
88
|
+
else 'ruby'; end
|
89
|
+
end
|
82
90
|
|
83
|
-
|
84
|
-
|
85
|
-
|
91
|
+
def includes_and_requires(paths)
|
92
|
+
parts = []
|
93
|
+
parts << Array(options[:include]).map { |path| "-I#{path}" } unless zeus? || spring?
|
94
|
+
parts << '-r bundler/setup' if bundler?
|
95
|
+
parts << '-rubygems' if rubygems?
|
96
|
+
unless drb? || zeus? || spring?
|
97
|
+
parts << "-r #{File.expand_path("../guard_test_runner", __FILE__)}"
|
98
|
+
parts << "-e \"%w[#{paths.join(' ')}].each { |p| load p }\""
|
86
99
|
end
|
87
100
|
|
88
|
-
|
101
|
+
parts
|
102
|
+
end
|
103
|
+
|
104
|
+
def test_files_list(paths)
|
105
|
+
paths.map { |path| "\"./#{path}\"" }
|
106
|
+
end
|
89
107
|
|
90
|
-
|
108
|
+
def command_options
|
109
|
+
if drb? || zeus? || spring?
|
110
|
+
[]
|
111
|
+
else
|
112
|
+
['--use-color', '--runner=guard']
|
113
|
+
end
|
91
114
|
end
|
92
115
|
|
93
116
|
end
|