test-unit 3.0.2 → 3.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e5e36432202b99f66240352830e7f0905d6af3fe
4
- data.tar.gz: bb182e15b0c60533e216394a5b5a83c093af57ff
3
+ metadata.gz: a84889d7e64ada72e39b5d39465d56fca7041b25
4
+ data.tar.gz: 723b397f2691190b10b17e0ba71dafa3d5d3247e
5
5
  SHA512:
6
- metadata.gz: 227161f5cf91cf319badbcaedb0b2101d033d02b9d354535bc0c7ba0409af84159bec959f769466f21a74899745e022f7e8cfb37cefa6b6910675ada10115848
7
- data.tar.gz: 4bbeeef520af902014c9d8f416e34a9350d25b88038c2c426253ac201e77d1981b3300922e435068010a35c8796a03a1fc7ee126a3f438e9f7d329242481bd44
6
+ metadata.gz: 7cccaddea4b0ddc35b4984a82b0b6fbc637f76f427671efa6c4aeba33e6f7246ac191cc62db8ced399db8128f478557e84e1e27ad0c8fbe35c4a27b966807083
7
+ data.tar.gz: 64f04e97bd245dbcb02fece0633cd3cfc5cdf14877a5d75cadb817d7743d97db9f2fcab4ea1a918c4aa88a27ed7531116bd68b1085ef00ffd9826272e2dab3b0
data/README.md CHANGED
@@ -34,7 +34,7 @@ writing tests, checking results and automated testing in Ruby.
34
34
 
35
35
  ## How To
36
36
 
37
- * {file:doc/text/how-to.textile}
37
+ * [doc/text/how-to.md](doc/text/how-to.md)
38
38
 
39
39
  ## Install
40
40
 
@@ -1,5 +1,26 @@
1
1
  # News
2
2
 
3
+ ## 3.0.3 - 2014-10-29 {#version-3-0-3}
4
+
5
+ It's a minor update release.
6
+
7
+ ### Improvements
8
+
9
+ * Improved `Test::Unit::TestCase.test` performance.
10
+ 100 times faster.
11
+ * Supported `Proc` for user message.
12
+ [Sugested by Nobuyoshi Nakada]
13
+
14
+ ### Fixes
15
+
16
+ * Fixed markup in document.
17
+ [GitHub#81][Patch by Masafumi Yokoyama]
18
+
19
+ ### Thanks
20
+
21
+ * Masafumi Yokoyama
22
+ * Nobuyoshi Nakada
23
+
3
24
  ## 3.0.2 - 2014-10-15 {#version-3-0-2}
4
25
 
5
26
  It's a minor update release.
@@ -2062,7 +2062,9 @@ EOT
2062
2062
  def to_s
2063
2063
  message_parts = []
2064
2064
  if (@head)
2065
- head = @head.to_s
2065
+ head = @head
2066
+ head = head.call if head.respond_to?(:call)
2067
+ head = head.to_s
2066
2068
  unless(head.empty?)
2067
2069
  message_parts << add_period(head)
2068
2070
  end
@@ -8,6 +8,10 @@ module Test
8
8
  end
9
9
  end
10
10
 
11
+ def key?(key)
12
+ super(self.class.stringify(key))
13
+ end
14
+
11
15
  def [](key)
12
16
  super(self.class.stringify(key))
13
17
  end
@@ -107,6 +111,26 @@ module Test
107
111
  attributes || StringifyKeyHash.new
108
112
  end
109
113
 
114
+ def find_attribute(method_name, name)
115
+ @attributes_table ||= StringifyKeyHash.new
116
+ if @attributes_table.key?(method_name)
117
+ attributes = @attributes_table[method_name]
118
+ if attributes.key?(name)
119
+ return attributes[name]
120
+ end
121
+ end
122
+
123
+ return nil if self == TestCase
124
+
125
+ @cached_parent_test_case ||= ancestors.find do |ancestor|
126
+ ancestor != self and
127
+ ancestor.is_a?(Class) and
128
+ ancestor < Test::Unit::Attribute
129
+ end
130
+
131
+ @cached_parent_test_case.find_attribute(method_name, name)
132
+ end
133
+
110
134
  @@attribute_observers = StringifyKeyHash.new
111
135
  def register_attribute_observer(attribute_name, observer=Proc.new)
112
136
  @@attribute_observers[attribute_name] ||= []
@@ -123,7 +147,7 @@ module Test
123
147
  end
124
148
 
125
149
  def [](name)
126
- attributes[name]
150
+ self.class.find_attribute(@method_name, name)
127
151
  end
128
152
  end
129
153
  end
@@ -81,7 +81,7 @@ module Test
81
81
  each = :each
82
82
  end
83
83
  i = 0
84
- @to.send(each) do |item|
84
+ @to.__send__(each) do |item|
85
85
  @to_indexes[item] ||= []
86
86
  @to_indexes[item] << i
87
87
  i += 1
@@ -685,7 +685,7 @@ module Test
685
685
  to_index = to_start
686
686
  while from_index >= 0 or to_index >= 0
687
687
  [@from[from_index], @to[to_index]].each do |line|
688
- return line if line and send(predicate, line)
688
+ return line if line and __send__(predicate, line)
689
689
  end
690
690
 
691
691
  from_index -= 1
@@ -5,93 +5,160 @@ module Test
5
5
  def included(base)
6
6
  base.extend(ClassMethods)
7
7
 
8
- [:setup, :cleanup, :teardown].each do |fixture|
8
+ [:setup, :cleanup, :teardown].each do |type|
9
9
  observer = lambda do |test_case, _, _, value, callback|
10
10
  if value.nil?
11
- test_case.send("unregister_#{fixture}_callback", callback)
11
+ test_case.fixture[type].unregister(callback)
12
12
  else
13
- test_case.send("register_#{fixture}_callback", callback, value)
13
+ test_case.fixture[type].register(callback, value)
14
14
  end
15
15
  end
16
- base.register_attribute_observer(fixture, &observer)
16
+ base.register_attribute_observer(type, &observer)
17
17
  end
18
18
  end
19
19
  end
20
20
 
21
- module ClassMethods
22
- def setup(*method_names, &callback)
23
- register_fixture(:setup, *method_names, &callback)
21
+ class Fixture
22
+ attr_reader :setup
23
+ attr_reader :cleanup
24
+ attr_reader :teardown
25
+ def initialize(test_case)
26
+ @test_case = test_case
27
+ @setup = HookPoint.new(:after => :append)
28
+ @cleanup = HookPoint.new(:before => :prepend)
29
+ @teardown = HookPoint.new(:before => :prepend)
30
+ end
31
+
32
+ def [](type)
33
+ case type
34
+ when :setup
35
+ @setup
36
+ when :cleanup
37
+ @cleanup
38
+ when :teardown
39
+ @teardown
40
+ end
24
41
  end
25
42
 
26
- def unregister_setup(*method_names_or_callbacks)
27
- unregister_fixture(:setup, *method_names_or_callbacks)
43
+ def before_callbacks(type)
44
+ target_test_cases.inject([]) do |callbacks, ancestor|
45
+ callbacks | ancestor.fixture[type].before_callbacks
46
+ end
28
47
  end
29
48
 
30
- def cleanup(*method_names, &callback)
31
- register_fixture(:cleanup, *method_names, &callback)
49
+ def after_callbacks(type)
50
+ target_test_cases.inject([]) do |callbacks, ancestor|
51
+ callbacks | ancestor.fixture[type].after_callbacks
52
+ end
32
53
  end
33
54
 
34
- def unregister_cleanup(*method_names_or_callbacks)
35
- unregister_fixture(:cleanup, *method_names_or_callbacks)
55
+ private
56
+ def target_test_cases
57
+ @cached_target_test_cases ||= collect_target_test_cases
36
58
  end
37
59
 
38
- def teardown(*method_names, &callback)
39
- register_fixture(:teardown, *method_names, &callback)
60
+ def collect_target_test_cases
61
+ ancestors = @test_case.ancestors
62
+ base_index = ancestors.index(::Test::Unit::Fixture)
63
+ interested_ancestors = ancestors[0, base_index].find_all do |ancestor|
64
+ ancestor.is_a?(Class)
65
+ end
66
+ interested_ancestors.reverse
40
67
  end
68
+ end
41
69
 
42
- def unregister_teardown(*method_names_or_callbacks)
43
- unregister_fixture(:teardown, *method_names_or_callbacks)
70
+ class HookPoint
71
+ def initialize(default_options)
72
+ @default_options = default_options
73
+ @before_callbacks = []
74
+ @after_callbacks = []
75
+ @unregistered_callbacks = []
44
76
  end
45
77
 
46
- def register_setup_callback(method_name_or_callback, options)
47
- register_fixture_callback(:setup, method_name_or_callback,
48
- options, :after, :append)
78
+ def register(method_name_or_callback, options=nil)
79
+ options ||= {}
80
+ unless valid_register_options?(options)
81
+ message = "must be {:before => :prepend}, " +
82
+ "{:before => :append}, {:after => :prepend} or " +
83
+ "{:after => :append}: #{options.inspect}"
84
+ raise ArgumentError, message
85
+ end
86
+
87
+ if options.empty?
88
+ options = @default_options
89
+ end
90
+ before_how = options[:before]
91
+ after_how = options[:after]
92
+ if before_how
93
+ @before_callbacks = add_callback(@before_callbacks,
94
+ method_name_or_callback,
95
+ before_how)
96
+ else
97
+ @after_callbacks = add_callback(@after_callbacks,
98
+ method_name_or_callback,
99
+ after_how)
100
+ end
49
101
  end
50
102
 
51
- def unregister_setup_callback(method_name_or_callback)
52
- unregister_fixture_callback(:setup, method_name_or_callback)
103
+ def unregister(method_name_or_callback)
104
+ @unregistered_callbacks << method_name_or_callback
53
105
  end
54
106
 
55
- def register_cleanup_callback(method_name_or_callback, options)
56
- register_fixture_callback(:cleanup, method_name_or_callback,
57
- options, :before, :prepend)
107
+ def before_callbacks
108
+ @before_callbacks - @unregistered_callbacks
58
109
  end
59
110
 
60
- def unregister_cleanup_callback(method_name_or_callback)
61
- unregister_fixture_callback(:cleanup, method_name_or_callback)
111
+ def after_callbacks
112
+ @after_callbacks - @unregistered_callbacks
62
113
  end
63
114
 
64
- def register_teardown_callback(method_name_or_callback, options)
65
- register_fixture_callback(:teardown, method_name_or_callback,
66
- options, :before, :prepend)
115
+ private
116
+ def valid_register_options?(options)
117
+ return true if options.empty?
118
+ return false if options.size > 1
119
+
120
+ key = options.keys.first
121
+ [:before, :after].include?(key) and
122
+ [:prepend, :append].include?(options[key])
67
123
  end
68
124
 
69
- def unregister_teardown_callback(method_name_or_callback)
70
- unregister_fixture_callback(:teardown, method_name_or_callback)
125
+ def add_callback(callbacks, method_name_or_callback, how)
126
+ case how
127
+ when :prepend
128
+ [method_name_or_callback] | callbacks
129
+ when :append
130
+ callbacks | [method_name_or_callback]
131
+ end
71
132
  end
133
+ end
72
134
 
73
- def before_setup_callbacks
74
- collect_fixture_callbacks(:setup, :before)
135
+ module ClassMethods
136
+ def fixture
137
+ @fixture ||= Fixture.new(self)
75
138
  end
76
139
 
77
- def after_setup_callbacks
78
- collect_fixture_callbacks(:setup, :after)
140
+ def setup(*method_names, &callback)
141
+ register_fixture(:setup, *method_names, &callback)
79
142
  end
80
143
 
81
- def before_cleanup_callbacks
82
- collect_fixture_callbacks(:cleanup, :before)
144
+ def unregister_setup(*method_names_or_callbacks)
145
+ unregister_fixture(:setup, *method_names_or_callbacks)
83
146
  end
84
147
 
85
- def after_cleanup_callbacks
86
- collect_fixture_callbacks(:cleanup, :after)
148
+ def cleanup(*method_names, &callback)
149
+ register_fixture(:cleanup, *method_names, &callback)
87
150
  end
88
151
 
89
- def before_teardown_callbacks
90
- collect_fixture_callbacks(:teardown, :before)
152
+ def unregister_cleanup(*method_names_or_callbacks)
153
+ unregister_fixture(:cleanup, *method_names_or_callbacks)
91
154
  end
92
155
 
93
- def after_teardown_callbacks
94
- collect_fixture_callbacks(:teardown, :after)
156
+ def teardown(*method_names, &callback)
157
+ register_fixture(:teardown, *method_names, &callback)
158
+ end
159
+
160
+ def unregister_teardown(*method_names_or_callbacks)
161
+ unregister_fixture(:teardown, *method_names_or_callbacks)
95
162
  end
96
163
 
97
164
  private
@@ -106,86 +173,14 @@ module Test
106
173
  def unregister_fixture(fixture, *method_names_or_callbacks)
107
174
  attribute(fixture, nil, *method_names_or_callbacks)
108
175
  end
109
-
110
- def valid_register_fixture_options?(options)
111
- return true if options.empty?
112
- return false if options.size > 1
113
-
114
- key = options.keys.first
115
- [:before, :after].include?(key) and
116
- [:prepend, :append].include?(options[key])
117
- end
118
-
119
- def add_fixture_callback(how, variable_name, method_name_or_callback)
120
- callbacks = instance_eval("#{variable_name} ||= []")
121
-
122
- if how == :prepend
123
- callbacks = [method_name_or_callback] | callbacks
124
- else
125
- callbacks = callbacks | [method_name_or_callback]
126
- end
127
- instance_variable_set(variable_name, callbacks)
128
- end
129
-
130
- def registered_callbacks_variable_name(fixture, order)
131
- "@#{order}_#{fixture}_callbacks"
132
- end
133
-
134
- def unregistered_callbacks_variable_name(fixture)
135
- "@unregistered_#{fixture}_callbacks"
136
- end
137
-
138
- def register_fixture_callback(fixture, method_name_or_callback, options,
139
- default_order, default_how)
140
- unless valid_register_fixture_options?(options)
141
- message = "must be {:before => :prepend}, " +
142
- "{:before => :append}, {:after => :prepend} or " +
143
- "{:after => :append}: #{options.inspect}"
144
- raise ArgumentError, message
145
- end
146
-
147
- if options.empty?
148
- order, how = default_order, default_how
149
- else
150
- order, how = options.to_a.first
151
- end
152
- variable_name = registered_callbacks_variable_name(fixture, order)
153
- add_fixture_callback(how, variable_name, method_name_or_callback)
154
- end
155
-
156
- def unregister_fixture_callback(fixture, method_name_or_callback)
157
- variable_name = unregistered_callbacks_variable_name(fixture)
158
- add_fixture_callback(:append, variable_name, method_name_or_callback)
159
- end
160
-
161
- def collect_fixture_callbacks(fixture, order)
162
- callbacks_variable = registered_callbacks_variable_name(fixture, order)
163
- unregistered_callbacks_variable =
164
- unregistered_callbacks_variable_name(fixture)
165
-
166
- base_index = ancestors.index(Fixture)
167
- interested_ancestors = ancestors[0, base_index].reverse
168
- interested_ancestors.inject([]) do |result, ancestor|
169
- if ancestor.is_a?(Class)
170
- ancestor.class_eval do
171
- callbacks = instance_eval("#{callbacks_variable} ||= []")
172
- unregistered_callbacks =
173
- instance_eval("#{unregistered_callbacks_variable} ||= []")
174
- (result | callbacks) - unregistered_callbacks
175
- end
176
- else
177
- result
178
- end
179
- end
180
- end
181
176
  end
182
177
 
183
178
  private
184
- def run_fixture(fixture, options={})
179
+ def run_fixture(type, options={})
185
180
  [
186
- self.class.send("before_#{fixture}_callbacks"),
187
- fixture,
188
- self.class.send("after_#{fixture}_callbacks")
181
+ self.class.fixture.before_callbacks(type),
182
+ type,
183
+ self.class.fixture.after_callbacks(type),
189
184
  ].flatten.each do |method_name_or_callback|
190
185
  run_fixture_callback(method_name_or_callback, options)
191
186
  end
@@ -199,7 +194,7 @@ module Test
199
194
  else
200
195
  return unless respond_to?(method_name_or_callback, true)
201
196
  callback = lambda do
202
- send(method_name_or_callback)
197
+ __send__(method_name_or_callback)
203
198
  end
204
199
  end
205
200
 
@@ -52,7 +52,7 @@ module Test
52
52
  def need_to_run?(test)
53
53
  priority = test[:priority] || Priority.default
54
54
  if have_priority?(priority)
55
- send(priority_check_method_name(priority), test)
55
+ __send__(priority_check_method_name(priority), test)
56
56
  else
57
57
  true
58
58
  end
@@ -105,7 +105,7 @@ module Test
105
105
  end
106
106
 
107
107
  def teardown
108
- if @test.send(:passed?)
108
+ if @test.__send__(:passed?)
109
109
  FileUtils.touch(passed_file)
110
110
  else
111
111
  FileUtils.rm_f(passed_file)
@@ -15,7 +15,7 @@ module Test
15
15
  def create
16
16
  suite = TestSuite.new(@test_case.name, @test_case)
17
17
  collect_test_names.each do |test_name|
18
- data_sets = @test_case.attributes(test_name)[:data]
18
+ data_sets = @test_case.find_attribute(test_name, :data)
19
19
  if data_sets
20
20
  data_sets.each do |data_set|
21
21
  data_set = data_set.call if data_set.respond_to?(:call)
@@ -46,9 +46,10 @@ module Test
46
46
  methods -= super_test_case.public_instance_methods(true)
47
47
  method_names = methods.collect(&:to_s)
48
48
  test_names = method_names.find_all do |method_name|
49
- method_name =~ /^test./ or @test_case.attributes(method_name)[:test]
49
+ method_name =~ /^test./ or
50
+ @test_case.find_attribute(method_name, :test)
50
51
  end
51
- send("sort_test_names_in_#{@test_case.test_order}_order", test_names)
52
+ __send__("sort_test_names_in_#{@test_case.test_order}_order", test_names)
52
53
  end
53
54
 
54
55
  def sort_test_names_in_alphabetic_order(test_names)
@@ -60,10 +61,10 @@ module Test
60
61
  end
61
62
 
62
63
  def sort_test_names_in_defined_order(test_names)
63
- added_methods = @test_case.added_methods
64
+ added_method_names = @test_case.added_method_names
64
65
  test_names.sort do |test1, test2|
65
- test1_defined_order = added_methods.index(test1)
66
- test2_defined_order = added_methods.index(test2)
66
+ test1_defined_order = added_method_names.index(test1)
67
+ test2_defined_order = added_method_names.index(test2)
67
68
  if test1_defined_order and test2_defined_order
68
69
  test1_defined_order <=> test2_defined_order
69
70
  elsif test1_defined_order
@@ -109,16 +109,15 @@ module Test
109
109
  super
110
110
  end
111
111
 
112
- @@added_methods = {}
112
+ @@added_method_names = {}
113
113
  def method_added(name) # :nodoc:
114
114
  super
115
- _added_methods = added_methods
115
+ added_method_names = (@@added_method_names[self] ||= {})
116
116
  stringified_name = name.to_s
117
- if _added_methods.include?(stringified_name)
117
+ if added_method_names.key?(stringified_name)
118
118
  attribute(:redefined, {:backtrace => caller}, {}, stringified_name)
119
119
  end
120
- _attributes = attributes_table[stringified_name] || {}
121
- source_location = _attributes[:source_location]
120
+ source_location = find_attribute(stringified_name, :source_location)
122
121
  if source_location
123
122
  path, line = source_location
124
123
  else
@@ -130,11 +129,11 @@ module Test
130
129
  :path => path,
131
130
  :line => line,
132
131
  }
133
- _added_methods << stringified_name
132
+ added_method_names[stringified_name] = true
134
133
  end
135
134
 
136
- def added_methods # :nodoc:
137
- @@added_methods[self] ||= []
135
+ def added_method_names # :nodoc:
136
+ (@@added_method_names[self] ||= {}).keys
138
137
  end
139
138
 
140
139
  # Rolls up all of the test* methods in the fixture into
@@ -339,7 +338,7 @@ module Test
339
338
  parent_test_case = self
340
339
  sub_test_case = Class.new(self) do
341
340
  singleton_class = class << self; self; end
342
- singleton_class.send(:define_method, :name) do
341
+ singleton_class.__send__(:define_method, :name) do
343
342
  [parent_test_case.name, name].compact.join("::")
344
343
  end
345
344
  end
@@ -704,7 +703,7 @@ module Test
704
703
  if handler.respond_to?(:call)
705
704
  handled = handler.call(self, exception)
706
705
  else
707
- handled = send(handler, exception)
706
+ handled = __send__(handler, exception)
708
707
  end
709
708
  return true if handled
710
709
  end
@@ -70,7 +70,7 @@ module Test
70
70
  def summary
71
71
  ["#{run_count} tests",
72
72
  "#{assertion_count} assertions",
73
- *@summary_generators.collect {|generator| send(generator)}].join(", ")
73
+ *@summary_generators.collect {|generator| __send__(generator)}].join(", ")
74
74
  end
75
75
 
76
76
  # Returnes a string that shows result status.
@@ -99,7 +99,7 @@ module Test
99
99
  # Returns whether or not this TestResult represents
100
100
  # successful completion.
101
101
  def passed?
102
- @problem_checkers.all? {|checker| not send(checker)}
102
+ @problem_checkers.all? {|checker| not __send__(checker)}
103
103
  end
104
104
 
105
105
  def pass_percentage
@@ -511,15 +511,15 @@ module Test
511
511
 
512
512
  private
513
513
  def output_single(something, color=nil)
514
- @runner.send(:output_single, something, color)
514
+ @runner.__send__(:output_single, something, color)
515
515
  end
516
516
 
517
517
  def output(something, color=nil)
518
- @runner.send(:output, something, color)
518
+ @runner.__send__(:output, something, color)
519
519
  end
520
520
 
521
521
  def color(name)
522
- @runner.send(:color, name)
522
+ @runner.__send__(:color, name)
523
523
  end
524
524
 
525
525
  def cut_off_ratio
@@ -16,7 +16,7 @@ module Test
16
16
  return super unless fault.respond_to?(:label)
17
17
  format_method_name = "format_fault_#{fault.label.downcase}"
18
18
  if respond_to?(format_method_name, true)
19
- send(format_method_name, fault)
19
+ __send__(format_method_name, fault)
20
20
  else
21
21
  super
22
22
  end
@@ -1,5 +1,5 @@
1
1
  module Test
2
2
  module Unit
3
- VERSION = '3.0.2'
3
+ VERSION = '3.0.3'
4
4
  end
5
5
  end
@@ -190,6 +190,23 @@ EOM
190
190
  assert_equal("string1", "string2", "failed assert_equal")
191
191
  }
192
192
  end
193
+
194
+ def test_with_message_proc
195
+ message = <<-EOM.chomp
196
+ failed assert_equal.
197
+ <"string1"> expected but was
198
+ <"string2">.
199
+
200
+ diff:
201
+ - string1
202
+ ? ^
203
+ + string2
204
+ ? ^
205
+ EOM
206
+ check_fail(message) do
207
+ assert_equal("string1", "string2", lambda {"failed assert_equal"})
208
+ end
209
+ end
193
210
  end
194
211
 
195
212
  class TestSystemMessage < self
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: test-unit
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.2
4
+ version: 3.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-10-15 00:00:00.000000000 Z
12
+ date: 2014-10-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: power_assert
@@ -234,44 +234,44 @@ signing_key:
234
234
  specification_version: 4
235
235
  summary: An xUnit family unit testing framework for Ruby.
236
236
  test_files:
237
- - test/test-failure.rb
238
- - test/test-emacs-runner.rb
239
237
  - test/test-assertions.rb
240
- - test/test-fault-location-detector.rb
241
- - test/test-test-suite.rb
238
+ - test/test-color.rb
242
239
  - test/test-code-snippet.rb
243
- - test/test-attribute.rb
244
- - test/test-omission.rb
240
+ - test/test-test-suite-creator.rb
241
+ - test/test-test-result.rb
245
242
  - test/test-error.rb
246
- - test/test-priority.rb
247
- - test/collector/test_objectspace.rb
248
- - test/collector/test-load.rb
249
- - test/collector/test-descendant.rb
250
- - test/collector/test_dir.rb
251
- - test/util/test_backtracefilter.rb
243
+ - test/test-failure.rb
244
+ - test/run-test.rb
245
+ - test/test-pending.rb
246
+ - test/test-color-scheme.rb
247
+ - test/test-attribute-matcher.rb
248
+ - test/testunit-test-util.rb
249
+ - test/test-data.rb
250
+ - test/ui/test_testrunmediator.rb
252
251
  - test/util/test-method-owner-finder.rb
253
252
  - test/util/test-output.rb
254
- - test/util/test_procwrapper.rb
255
253
  - test/util/test_observable.rb
256
- - test/test-diff.rb
257
- - test/ui/test_testrunmediator.rb
258
- - test/test-color-scheme.rb
259
- - test/fixtures/header.tsv
254
+ - test/util/test_backtracefilter.rb
255
+ - test/util/test_procwrapper.rb
256
+ - test/test-omission.rb
257
+ - test/test-test-case.rb
258
+ - test/test-fixture.rb
259
+ - test/fixtures/no-header.csv
260
260
  - test/fixtures/header-label.tsv
261
+ - test/fixtures/plus.csv
261
262
  - test/fixtures/no-header.tsv
262
263
  - test/fixtures/header-label.csv
263
- - test/fixtures/plus.csv
264
264
  - test/fixtures/header.csv
265
- - test/fixtures/no-header.csv
266
- - test/test-test-result.rb
267
- - test/testunit-test-util.rb
268
- - test/run-test.rb
269
- - test/test-test-suite-creator.rb
270
- - test/test-attribute-matcher.rb
271
- - test/test-test-case.rb
272
- - test/test-pending.rb
265
+ - test/fixtures/header.tsv
266
+ - test/collector/test-descendant.rb
267
+ - test/collector/test_objectspace.rb
268
+ - test/collector/test-load.rb
269
+ - test/collector/test_dir.rb
270
+ - test/test-priority.rb
271
+ - test/test-test-suite.rb
272
+ - test/test-diff.rb
273
+ - test/test-emacs-runner.rb
274
+ - test/test-attribute.rb
275
+ - test/test-fault-location-detector.rb
273
276
  - test/test-notification.rb
274
- - test/test-fixture.rb
275
- - test/test-data.rb
276
- - test/test-color.rb
277
277
  has_rdoc: