guard-test 0.3.0 → 0.3.1
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/CHANGELOG.md +19 -1
- data/README.md +18 -3
- data/lib/guard/test/inspector.rb +16 -3
- data/lib/guard/test/notifier.rb +1 -0
- data/lib/guard/test/runner.rb +6 -12
- data/lib/guard/test/version.rb +1 -1
- data/lib/guard/test.rb +6 -2
- metadata +46 -60
- data/lib/guard/test/formatter.rbc +0 -1981
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,20 @@
|
|
1
|
-
## 0.3.
|
1
|
+
## 0.3.1 - September 11, 2011
|
2
|
+
|
3
|
+
### New features:
|
4
|
+
|
5
|
+
- Pull request [#13](https://github.com/guard/guard-test/pull/13): New `test_paths` option to look for test files under other paths than `test`. ([@Ask11][])
|
6
|
+
|
7
|
+
### Improvements:
|
8
|
+
|
9
|
+
- Pull request [#15](https://github.com/guard/guard-test/pull/15): Simplify some checks. ([@dasch][])
|
10
|
+
|
11
|
+
## 0.3.0 - June 14, 2011
|
12
|
+
|
13
|
+
### Improvements:
|
14
|
+
|
15
|
+
- Internal cleaning. ([@rymai][])
|
16
|
+
|
17
|
+
## 0.3.0.rc5 - June 9, 2011
|
2
18
|
|
3
19
|
### Bugs fixes:
|
4
20
|
|
@@ -63,6 +79,8 @@
|
|
63
79
|
|
64
80
|
- Pull request [#1](https://github.com/guard/guard-test/pull/1): Include errors count to determine the "flag" to display in notification. ([@gregorymostizky][])
|
65
81
|
|
82
|
+
[@Ask11]: https://github.com/Ask11
|
83
|
+
[@dasch]: https://github.com/dasch
|
66
84
|
[@gregorymostizky]: https://github.com/gregorymostizky
|
67
85
|
[@jgrau]: https://github.com/jgrau
|
68
86
|
[@rymai]: https://github.com/rymai
|
data/README.md
CHANGED
@@ -6,14 +6,14 @@ If you have any questions about Guard or Guard::Test, please join us on our [Goo
|
|
6
6
|
|
7
7
|
## Features
|
8
8
|
|
9
|
-
- Compatible with Test::Unit >= 2.2
|
9
|
+
- Compatible with Test::Unit >= 2.2.
|
10
10
|
- Tested on Ruby 1.8.7, 1.9.2, REE, Rubinius and JRuby.
|
11
11
|
|
12
12
|
## Install
|
13
13
|
|
14
14
|
Please be sure to have [Guard](https://github.com/guard/guard) installed before continue.
|
15
15
|
|
16
|
-
If you're using Bundler, add it to your `Gemfile` (inside the `
|
16
|
+
If you're using Bundler, add it to your `Gemfile` (inside the `development` group):
|
17
17
|
|
18
18
|
```ruby
|
19
19
|
gem 'guard-test'
|
@@ -79,6 +79,14 @@ Guard::Test allows you to choose between two different runners (Guard::Test's ru
|
|
79
79
|
and print failures/errors messages & backtraces when all the tests are finished. Obviously, this is the guard-test default.
|
80
80
|
- `fastfail`: Display tests results as they happen and print failures/errors messages & backtraces immediately.
|
81
81
|
|
82
|
+
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:
|
83
|
+
|
84
|
+
```ruby
|
85
|
+
guard 'test', :test_paths => ['test', 'vendor/plugins/recaptcha/test', 'any/path/test'] do
|
86
|
+
# ...
|
87
|
+
end
|
88
|
+
```
|
89
|
+
|
82
90
|
Available options:
|
83
91
|
|
84
92
|
```ruby
|
@@ -89,6 +97,7 @@ Available options:
|
|
89
97
|
:all_on_start => false # don't run all the tests at startup, default: true
|
90
98
|
:all_after_pass => false # don't run all tests after changed tests pass, default: true
|
91
99
|
:keep_failed => false # keep failed tests until them pass, default: true
|
100
|
+
:test_paths => ['spec'] # specify an array of paths that contain test files
|
92
101
|
```
|
93
102
|
|
94
103
|
## Development
|
@@ -96,7 +105,13 @@ Available options:
|
|
96
105
|
- Source hosted on GitHub: https://github.com/guard/guard-test
|
97
106
|
- Report issues and feature requests to GitHub Issues: https://github.com/guard/guard-test/issues
|
98
107
|
|
99
|
-
Pull requests are very welcome!
|
108
|
+
Pull requests are very welcome! Please try to follow these simple "rules", though:
|
109
|
+
|
110
|
+
- Please create a topic branch for every separate change you make;
|
111
|
+
- Make sure your patches are well tested;
|
112
|
+
- Update the README (if applicable);
|
113
|
+
- Update the CHANGELOG (maybe not for a typo but don't hesitate!);
|
114
|
+
- Please do not change the version number.
|
100
115
|
|
101
116
|
For questions please join us on our [Google group](http://groups.google.com/group/guard-dev) or on `#guard` (irc.freenode.net).
|
102
117
|
|
data/lib/guard/test/inspector.rb
CHANGED
@@ -4,6 +4,14 @@ module Guard
|
|
4
4
|
module Inspector
|
5
5
|
|
6
6
|
class << self
|
7
|
+
def test_paths
|
8
|
+
@test_paths || []
|
9
|
+
end
|
10
|
+
|
11
|
+
def test_paths=(path_array)
|
12
|
+
@test_paths = Array(path_array)
|
13
|
+
end
|
14
|
+
|
7
15
|
def clean(paths)
|
8
16
|
paths.uniq!
|
9
17
|
paths.compact!
|
@@ -11,7 +19,7 @@ module Guard
|
|
11
19
|
paths.dup.each do |path|
|
12
20
|
if test_folder?(path)
|
13
21
|
paths.delete(path)
|
14
|
-
paths +=
|
22
|
+
paths += check_test_files(path)
|
15
23
|
else
|
16
24
|
paths.delete(path) unless test_file?(path)
|
17
25
|
end
|
@@ -26,7 +34,8 @@ module Guard
|
|
26
34
|
private
|
27
35
|
|
28
36
|
def test_folder?(path)
|
29
|
-
|
37
|
+
paths = test_paths.join("|")
|
38
|
+
path.match(%r{^\/?(#{paths})}) && !path.match(/\..+$/) && File.directory?(path)
|
30
39
|
end
|
31
40
|
|
32
41
|
def test_file?(path)
|
@@ -34,12 +43,16 @@ module Guard
|
|
34
43
|
end
|
35
44
|
|
36
45
|
def test_files
|
37
|
-
@test_files ||=
|
46
|
+
@test_files ||= test_paths.collect { |path| check_test_files(path) }.flatten
|
38
47
|
end
|
39
48
|
|
40
49
|
def clear_test_files_list
|
41
50
|
@test_files = nil
|
42
51
|
end
|
52
|
+
|
53
|
+
def check_test_files(path)
|
54
|
+
Dir[File.join(path, '**', 'test_*.rb')] + Dir[File.join(path, '**', '*_test.rb')]
|
55
|
+
end
|
43
56
|
end
|
44
57
|
|
45
58
|
end
|
data/lib/guard/test/notifier.rb
CHANGED
data/lib/guard/test/runner.rb
CHANGED
@@ -25,21 +25,15 @@ module Guard
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def rvm?
|
28
|
-
|
29
|
-
@rvm = @options[:rvm] && @options[:rvm].respond_to?(:join)
|
30
|
-
end
|
31
|
-
@rvm
|
28
|
+
@rvm ||= @options[:rvm] && @options[:rvm].respond_to?(:join)
|
32
29
|
end
|
33
30
|
|
34
31
|
def turn?
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
false
|
40
|
-
end
|
32
|
+
@turn ||= begin
|
33
|
+
require 'turn'
|
34
|
+
rescue LoadError
|
35
|
+
false
|
41
36
|
end
|
42
|
-
@turn
|
43
37
|
end
|
44
38
|
|
45
39
|
private
|
@@ -50,7 +44,7 @@ module Guard
|
|
50
44
|
cmd_parts << "bundle exec" if @options[:bundler] && !turn?
|
51
45
|
cmd_parts << "#{turn? ? 'turn' : 'ruby'} -Itest"
|
52
46
|
cmd_parts << "-r bundler/setup" if @options[:bundler] && !turn?
|
53
|
-
|
47
|
+
|
54
48
|
unless turn?
|
55
49
|
cmd_parts << "-r #{File.expand_path("../runners/#{@runner_name}_guard_test_runner", __FILE__)}"
|
56
50
|
cmd_parts << "-e \"%w[#{paths.join(' ')}].each { |p| load p }\""
|
data/lib/guard/test/version.rb
CHANGED
data/lib/guard/test.rb
CHANGED
@@ -15,7 +15,8 @@ module Guard
|
|
15
15
|
@options = {
|
16
16
|
:all_on_start => true,
|
17
17
|
:all_after_pass => true,
|
18
|
-
:keep_failed => true
|
18
|
+
:keep_failed => true,
|
19
|
+
:test_paths => ['test']
|
19
20
|
}.update(options)
|
20
21
|
@last_failed = false
|
21
22
|
@failed_paths = []
|
@@ -29,7 +30,9 @@ module Guard
|
|
29
30
|
end
|
30
31
|
|
31
32
|
def run_all
|
32
|
-
|
33
|
+
Inspector.test_paths = @options[:test_paths]
|
34
|
+
test_paths = @options[:test_paths].clone # because clean - cleaning variable
|
35
|
+
passed = @runner.run(Inspector.clean(test_paths), :message => 'Running all tests')
|
33
36
|
|
34
37
|
@failed_paths = [] if passed
|
35
38
|
@last_failed = !passed
|
@@ -40,6 +43,7 @@ module Guard
|
|
40
43
|
end
|
41
44
|
|
42
45
|
def run_on_change(paths)
|
46
|
+
Inspector.test_paths = @options[:test_paths]
|
43
47
|
paths += @failed_paths if @options[:keep_failed]
|
44
48
|
paths = Inspector.clean(paths)
|
45
49
|
passed = @runner.run(paths)
|
metadata
CHANGED
@@ -1,73 +1,67 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-test
|
3
|
-
version: !ruby/object:Gem::Version
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.3.1
|
4
5
|
prerelease:
|
5
|
-
version: 0.3.0
|
6
6
|
platform: ruby
|
7
|
-
authors:
|
8
|
-
-
|
7
|
+
authors:
|
8
|
+
- Rémy Coutable
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
dependencies:
|
16
|
-
- !ruby/object:Gem::Dependency
|
12
|
+
date: 2011-09-11 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
17
15
|
name: guard
|
18
|
-
requirement: &
|
16
|
+
requirement: &2157114800 !ruby/object:Gem::Requirement
|
19
17
|
none: false
|
20
|
-
requirements:
|
21
|
-
- -
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 0.
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.4.0
|
24
22
|
type: :runtime
|
25
23
|
prerelease: false
|
26
|
-
version_requirements: *
|
27
|
-
- !ruby/object:Gem::Dependency
|
24
|
+
version_requirements: *2157114800
|
25
|
+
- !ruby/object:Gem::Dependency
|
28
26
|
name: test-unit
|
29
|
-
requirement: &
|
27
|
+
requirement: &2157113380 !ruby/object:Gem::Requirement
|
30
28
|
none: false
|
31
|
-
requirements:
|
29
|
+
requirements:
|
32
30
|
- - ~>
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version:
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.3.1
|
35
33
|
type: :runtime
|
36
34
|
prerelease: false
|
37
|
-
version_requirements: *
|
38
|
-
- !ruby/object:Gem::Dependency
|
35
|
+
version_requirements: *2157113380
|
36
|
+
- !ruby/object:Gem::Dependency
|
39
37
|
name: bundler
|
40
|
-
requirement: &
|
38
|
+
requirement: &2157112120 !ruby/object:Gem::Requirement
|
41
39
|
none: false
|
42
|
-
requirements:
|
40
|
+
requirements:
|
43
41
|
- - ~>
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version:
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '1.0'
|
46
44
|
type: :development
|
47
45
|
prerelease: false
|
48
|
-
version_requirements: *
|
49
|
-
- !ruby/object:Gem::Dependency
|
46
|
+
version_requirements: *2157112120
|
47
|
+
- !ruby/object:Gem::Dependency
|
50
48
|
name: rspec
|
51
|
-
requirement: &
|
49
|
+
requirement: &2157111180 !ruby/object:Gem::Requirement
|
52
50
|
none: false
|
53
|
-
requirements:
|
51
|
+
requirements:
|
54
52
|
- - ~>
|
55
|
-
- !ruby/object:Gem::Version
|
56
|
-
version:
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '2.6'
|
57
55
|
type: :development
|
58
56
|
prerelease: false
|
59
|
-
version_requirements: *
|
57
|
+
version_requirements: *2157111180
|
60
58
|
description: Guard::Test automatically run your tests on file modification.
|
61
|
-
email:
|
59
|
+
email:
|
62
60
|
- rymai@rymai.me
|
63
61
|
executables: []
|
64
|
-
|
65
62
|
extensions: []
|
66
|
-
|
67
63
|
extra_rdoc_files: []
|
68
|
-
|
69
|
-
files:
|
70
|
-
- lib/guard/test/formatter.rbc
|
64
|
+
files:
|
71
65
|
- lib/guard/test/inspector.rb
|
72
66
|
- lib/guard/test/inspector.rbc
|
73
67
|
- lib/guard/test/notifier.rb
|
@@ -92,36 +86,28 @@ files:
|
|
92
86
|
- CHANGELOG.md
|
93
87
|
- LICENSE
|
94
88
|
- README.md
|
95
|
-
has_rdoc: true
|
96
89
|
homepage: https://github.com/guard/guard-test
|
97
90
|
licenses: []
|
98
|
-
|
99
91
|
post_install_message:
|
100
92
|
rdoc_options: []
|
101
|
-
|
102
|
-
require_paths:
|
93
|
+
require_paths:
|
103
94
|
- lib
|
104
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
95
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
105
96
|
none: false
|
106
|
-
requirements:
|
107
|
-
- -
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
|
110
|
-
|
111
|
-
- 0
|
112
|
-
version: "0"
|
113
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
97
|
+
requirements:
|
98
|
+
- - ! '>='
|
99
|
+
- !ruby/object:Gem::Version
|
100
|
+
version: '0'
|
101
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
102
|
none: false
|
115
|
-
requirements:
|
116
|
-
- -
|
117
|
-
- !ruby/object:Gem::Version
|
103
|
+
requirements:
|
104
|
+
- - ! '>='
|
105
|
+
- !ruby/object:Gem::Version
|
118
106
|
version: 1.3.6
|
119
107
|
requirements: []
|
120
|
-
|
121
108
|
rubyforge_project: guard-test
|
122
|
-
rubygems_version: 1.
|
109
|
+
rubygems_version: 1.8.10
|
123
110
|
signing_key:
|
124
111
|
specification_version: 3
|
125
|
-
summary: Guard gem for
|
112
|
+
summary: Guard gem for test-unit 2
|
126
113
|
test_files: []
|
127
|
-
|