autotest 4.3.2 → 4.4.0
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +23 -0
- data/VERSION +1 -1
- data/autotest.gemspec +2 -2
- data/bin/autotest +5 -4
- data/lib/autotest.rb +43 -2
- data/lib/autotest/rcov.rb +8 -4
- data/lib/autotest/restart.rb +4 -3
- data/test/test_autotest.rb +16 -8
- metadata +4 -4
data/History.txt
CHANGED
@@ -1,3 +1,26 @@
|
|
1
|
+
=== 4.4.0 / 2010-09-01
|
2
|
+
|
3
|
+
* 1 major enhancement:
|
4
|
+
|
5
|
+
* Removed git building. I'm dropping direct support for rubinius.
|
6
|
+
|
7
|
+
* 3 minor enhancements:
|
8
|
+
|
9
|
+
* Added multiruby mri:list:x.y.z command so you can see what's available.
|
10
|
+
* Enabled installing specific patch versions of ruby.
|
11
|
+
* multiruby rubygems:update now forces a build to be less confusing.
|
12
|
+
|
13
|
+
* 1 bug fix:
|
14
|
+
|
15
|
+
* Removed redundant test_to_normal, now in zentest_mappings
|
16
|
+
|
17
|
+
=== 4.3.3 / 2010-06-17
|
18
|
+
|
19
|
+
* 2 minor enhancements:
|
20
|
+
|
21
|
+
* Added options and removed pattern from Autotest::RCov
|
22
|
+
* update_rubygems now deletes cached rubygems installs
|
23
|
+
|
1
24
|
=== 4.3.2 / 2010-06-02
|
2
25
|
|
3
26
|
* 1 minor enhancement:
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
4.
|
1
|
+
4.4.0
|
data/autotest.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{autotest}
|
8
|
-
s.version = "4.
|
8
|
+
s.version = "4.4.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ryan Davis"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-09-29}
|
13
13
|
s.executables = ["autotest", "unit_diff"]
|
14
14
|
s.extra_rdoc_files = [
|
15
15
|
"README.markdown"
|
data/bin/autotest
CHANGED
@@ -5,7 +5,7 @@ require 'optparse'
|
|
5
5
|
options = {}
|
6
6
|
OptionParser.new do |opts|
|
7
7
|
opts.banner = <<BANNER
|
8
|
-
|
8
|
+
Continuous testing for your ruby app.
|
9
9
|
|
10
10
|
Usage:
|
11
11
|
autotest [options]
|
@@ -20,7 +20,7 @@ BANNER
|
|
20
20
|
opts.on("-h", "--help","Show this.") { puts opts;exit }
|
21
21
|
end.parse!
|
22
22
|
|
23
|
-
#
|
23
|
+
# remove warnings from Dir.[]
|
24
24
|
class Dir
|
25
25
|
class << self
|
26
26
|
alias :old_index :[]
|
@@ -34,12 +34,13 @@ class Dir
|
|
34
34
|
end
|
35
35
|
|
36
36
|
#run the correct Autotest variant fitting to the local structure
|
37
|
-
$LOAD_PATH.unshift("#{File.dirname(__FILE__)}/../lib")
|
38
|
-
|
37
|
+
$LOAD_PATH.unshift(File.expand_path("#{File.dirname(__FILE__)}/../lib"))
|
39
38
|
require 'autotest'
|
39
|
+
|
40
40
|
Autotest.options.merge!(options)
|
41
41
|
target = Autotest
|
42
42
|
style = Autotest.autodiscover
|
43
|
+
|
43
44
|
unless style.empty? then
|
44
45
|
mod = "autotest/#{style.join("_")}"
|
45
46
|
puts "loading #{mod}" unless options[:quiet]
|
data/lib/autotest.rb
CHANGED
@@ -80,6 +80,45 @@ class Autotest
|
|
80
80
|
|
81
81
|
@@discoveries = []
|
82
82
|
|
83
|
+
##
|
84
|
+
# Provide some help
|
85
|
+
def self.usage
|
86
|
+
help = [
|
87
|
+
"autotest [options]",
|
88
|
+
nil,
|
89
|
+
"Autotest automatically tests code that has changed.",
|
90
|
+
"It assumes the code is in lib, and tests are in tests.",
|
91
|
+
"Autotest uses plugins to control what happens.",
|
92
|
+
"You configure plugins with require statements in the",
|
93
|
+
".autotest file in your project base directory,",
|
94
|
+
"and a default configuration for all your projects",
|
95
|
+
"in the .autotest file in your home directory.",
|
96
|
+
|
97
|
+
nil,
|
98
|
+
"options:",
|
99
|
+
"\t-h",
|
100
|
+
"\t-help\t\tYou're looking at it.",
|
101
|
+
nil,
|
102
|
+
"\t-v\t\tBe verbose.",
|
103
|
+
"\t\t\tPrints files that autotest doesn't know how to map to",
|
104
|
+
"\t\t\ttests.",
|
105
|
+
nil,
|
106
|
+
"\t-q\t\tBe more quiet.",
|
107
|
+
nil,
|
108
|
+
"\t-f\t\tFast start.",
|
109
|
+
"\t\t\tDoesn't initially run tests at start.",
|
110
|
+
]
|
111
|
+
STDERR.puts help.join("\n")
|
112
|
+
end
|
113
|
+
|
114
|
+
##
|
115
|
+
# Call Autotest.usage then exit with 1.
|
116
|
+
def self.usage_with_exit
|
117
|
+
self.usage
|
118
|
+
exit 1
|
119
|
+
end
|
120
|
+
|
121
|
+
|
83
122
|
##
|
84
123
|
# Add a proc to the collection of discovery procs. See
|
85
124
|
# +autodiscover+.
|
@@ -157,6 +196,8 @@ class Autotest
|
|
157
196
|
:unit_diff,
|
158
197
|
:wants_to_quit)
|
159
198
|
|
199
|
+
alias tainted? tainted
|
200
|
+
|
160
201
|
##
|
161
202
|
# Initialize the instance and then load the user's .autotest file, if any.
|
162
203
|
|
@@ -223,14 +264,14 @@ class Autotest
|
|
223
264
|
loop do
|
224
265
|
begin # ^c handler
|
225
266
|
get_to_green
|
226
|
-
if
|
267
|
+
if tainted? and not options[:no_full_after_failed]
|
227
268
|
rerun_all_tests
|
228
269
|
else
|
229
270
|
hook :all_good
|
230
271
|
end
|
231
272
|
wait_for_changes
|
232
273
|
rescue Interrupt
|
233
|
-
break if
|
274
|
+
break if wants_to_quit
|
234
275
|
reset
|
235
276
|
end
|
236
277
|
end
|
data/lib/autotest/rcov.rb
CHANGED
@@ -1,16 +1,21 @@
|
|
1
1
|
module Autotest::RCov
|
2
|
-
@@command, @@
|
2
|
+
@@command, @@options = "rcov", nil
|
3
3
|
|
4
4
|
def self.command= o
|
5
5
|
@@command = o
|
6
6
|
end
|
7
7
|
|
8
8
|
def self.pattern= o
|
9
|
-
|
9
|
+
warn "RCov.pattern= no longer has any functionality. please remove."
|
10
|
+
end
|
11
|
+
|
12
|
+
def self.options= o
|
13
|
+
@@options = o
|
10
14
|
end
|
11
15
|
|
12
16
|
Autotest.add_hook :all_good do |at|
|
13
|
-
|
17
|
+
options = @@options ? "RCOVOPTS=\"#{@@options}\"" : ""
|
18
|
+
system "rake #{@@command} #{options}"
|
14
19
|
false
|
15
20
|
end
|
16
21
|
|
@@ -20,4 +25,3 @@ module Autotest::RCov
|
|
20
25
|
false
|
21
26
|
end
|
22
27
|
end
|
23
|
-
|
data/lib/autotest/restart.rb
CHANGED
@@ -2,10 +2,11 @@ module Autotest::Restart
|
|
2
2
|
Autotest.add_hook :updated do |at, *args|
|
3
3
|
if args.flatten.include? ".autotest" then
|
4
4
|
warn "Detected change to .autotest, restarting"
|
5
|
-
cmd =
|
5
|
+
cmd = %w(autotest)
|
6
6
|
cmd << " -v" if $v
|
7
|
-
|
8
|
-
|
7
|
+
cmd += ARGV
|
8
|
+
|
9
|
+
exec(*cmd)
|
9
10
|
end
|
10
11
|
end
|
11
12
|
end
|
data/test/test_autotest.rb
CHANGED
@@ -110,7 +110,10 @@ class TestAutotest < Test::Unit::TestCase
|
|
110
110
|
|
111
111
|
@a.find_order = @files.keys.sort
|
112
112
|
|
113
|
-
input = [['test_fail1',
|
113
|
+
input = [['test_fail1', @test_class],
|
114
|
+
['test_fail2', @test_class],
|
115
|
+
['test_error1', @test_class],
|
116
|
+
['test_error2', @test_class]]
|
114
117
|
result = @a.consolidate_failures input
|
115
118
|
expected = { @test => %w( test_fail1 test_fail2 test_error1 test_error2 ) }
|
116
119
|
assert_equal expected, result
|
@@ -133,10 +136,10 @@ class TestAutotest < Test::Unit::TestCase
|
|
133
136
|
|
134
137
|
def test_consolidate_failures_nested_classes
|
135
138
|
@files.clear
|
136
|
-
@files['lib/outer.rb']
|
139
|
+
@files['lib/outer.rb'] = Time.at(5)
|
137
140
|
@files['lib/outer/inner.rb'] = Time.at(5)
|
138
|
-
@files[@inner_test]
|
139
|
-
@files[@outer_test]
|
141
|
+
@files[@inner_test] = Time.at(5)
|
142
|
+
@files[@outer_test] = Time.at(5)
|
140
143
|
|
141
144
|
@a.find_order = @files.keys.sort
|
142
145
|
|
@@ -363,9 +366,14 @@ test_error2(#{@test_class}):
|
|
363
366
|
}
|
364
367
|
|
365
368
|
unit_diff = File.expand_path("#{File.dirname(__FILE__)}/../bin/unit_diff")
|
369
|
+
pre = "#{RUBY} -I.:lib:test -rubygems"
|
370
|
+
req = ".each { |f| require f }\""
|
371
|
+
post = "| #{unit_diff} -u"
|
366
372
|
|
367
|
-
expected = [
|
368
|
-
|
373
|
+
expected = [
|
374
|
+
"#{pre} -e \"['test/unit', '#{@test}']#{req} #{post}",
|
375
|
+
"#{pre} test/test_fooby.rb -n \"/^(test_something1|test_something2)$/\" #{post}"
|
376
|
+
].join("; ")
|
369
377
|
|
370
378
|
result = @a.make_test_cmd f
|
371
379
|
assert_equal expected, result
|
@@ -429,8 +437,8 @@ test_error2(#{@test_class}):
|
|
429
437
|
|
430
438
|
assert @a.find_files_to_test(files)
|
431
439
|
assert_equal expected, @a.files_to_test
|
432
|
-
assert_equal t,
|
433
|
-
assert_equal "",
|
440
|
+
assert_equal t, @a.last_mtime
|
441
|
+
assert_equal "", @a.output.string
|
434
442
|
end
|
435
443
|
|
436
444
|
def util_mappings
|
metadata
CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
|
|
4
4
|
prerelease: false
|
5
5
|
segments:
|
6
6
|
- 4
|
7
|
-
-
|
8
|
-
-
|
9
|
-
version: 4.
|
7
|
+
- 4
|
8
|
+
- 0
|
9
|
+
version: 4.4.0
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Ryan Davis
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-
|
17
|
+
date: 2010-09-29 00:00:00 +02:00
|
18
18
|
default_executable:
|
19
19
|
dependencies: []
|
20
20
|
|