difects 3.0.0 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -18,12 +18,12 @@ module DIFECTS
18
18
  ##
19
19
  # Number of this release of this project.
20
20
  #
21
- VERSION = '3.0.0'
21
+ VERSION = '3.0.1'
22
22
 
23
23
  ##
24
24
  # Date of this release of this project.
25
25
  #
26
- RELDATE = '2010-07-24'
26
+ RELDATE = '2010-07-25'
27
27
 
28
28
  ##
29
29
  # Description of this release of this project.
data/lib/difects.rb CHANGED
@@ -584,7 +584,7 @@ module DIFECTS
584
584
  else
585
585
  # find the closest insulated parent test; this should always
586
586
  # succeed because root-level tests are insulated by default
587
- test = @tests.reverse.find {|t| t.sandbox }
587
+ test = @tests.reverse.find {|t| t.sandbox } or raise IndexError
588
588
  test.sandbox.instance_eval(&block)
589
589
  end
590
590
 
@@ -995,7 +995,7 @@ module DIFECTS
995
995
  format % [('=>' if n == source_line), n, source[n-1].chomp]
996
996
  end.unshift "[#{region.inspect}] in #{source_file}"
997
997
 
998
- pretty.extend FailureDetailsCodeListing
998
+ pretty.extend FailureDetails::CodeListing
999
999
  end
1000
1000
  )
1001
1001
  ]
@@ -1005,17 +1005,15 @@ module DIFECTS
1005
1005
  details[:bind] = [source_file, binding_line].join(':')
1006
1006
 
1007
1007
  # variable values
1008
- names = eval('::Kernel.local_variables', binding, __FILE__, __LINE__)
1008
+ variables = eval('::Kernel.local_variables', binding, __FILE__, __LINE__)
1009
1009
 
1010
- pairs = names.inject([]) do |pair, name|
1011
- value = eval(name.to_s, binding, __FILE__, __LINE__)
1012
- pair.push name.to_sym, value
1013
- end
1014
-
1015
- details[:vars] = Hash[*pairs].extend(FailureDetailsVariablesListing)
1010
+ details[:vars] = variables.inject(Hash.new) do |hash, variable|
1011
+ hash[variable.to_sym] = eval(variable.to_s, binding, __FILE__, __LINE__)
1012
+ hash
1013
+ end.extend(FailureDetails::VariablesListing)
1016
1014
  end
1017
1015
 
1018
- details.reject! {|k,v| v.nil? }
1016
+ details.reject! {|key, value| (value || details[key]).nil? }
1019
1017
  @trace << details
1020
1018
 
1021
1019
  # show all failure details to the user
@@ -1067,37 +1065,37 @@ module DIFECTS
1067
1065
  end
1068
1066
 
1069
1067
  ##
1070
- # Logic to pretty print the code listing in a failure's details.
1068
+ # Logic to pretty print the details of an assertion failure.
1071
1069
  #
1072
- module FailureDetailsCodeListing # @private
1073
- def to_yaml options = {}
1074
- #
1075
- # strip because to_yaml() will render the paragraph without escaping
1076
- # newlines ONLY IF the first and last character are non-whitespace!
1077
- #
1078
- join("\n").strip.to_yaml(options)
1079
- end
1070
+ module FailureDetails # @private
1071
+ module CodeListing
1072
+ def to_yaml options = {}
1073
+ #
1074
+ # strip because to_yaml() will render the paragraph without escaping
1075
+ # newlines ONLY IF the first and last character are non-whitespace!
1076
+ #
1077
+ join("\n").strip.to_yaml(options)
1078
+ end
1080
1079
 
1081
- def pretty_print printer
1082
- margin = ' ' * printer.indent
1083
- printer.text [
1084
- first, self[1..-1].map {|line| margin + line }, margin
1085
- ].join(printer.newline)
1080
+ def pretty_print printer
1081
+ margin = ' ' * printer.indent
1082
+ printer.text [
1083
+ first, self[1..-1].map {|line| margin + line }, margin
1084
+ ].join(printer.newline)
1085
+ end
1086
1086
  end
1087
- end
1088
1087
 
1089
- module FailureDetailsVariablesListing # @private
1090
- def to_yaml options = {}
1091
- require 'pp'
1092
- require 'stringio'
1088
+ module VariablesListing
1089
+ def to_yaml options = {}
1090
+ require 'pp'
1091
+ require 'stringio'
1093
1092
 
1094
- pairs = []
1095
- each do |variable, value|
1096
- pretty = PP.pp(value, StringIO.new).string.chomp
1097
- pairs.push variable, "(#{value.class}) #{pretty}"
1093
+ inject(Hash.new) do |hash, (variable, value)|
1094
+ pretty = PP.pp(value, StringIO.new).string.chomp
1095
+ hash[variable] = "(#{value.class}) #{pretty}"
1096
+ hash
1097
+ end.to_yaml(options)
1098
1098
  end
1099
-
1100
- Hash[*pairs].to_yaml(options)
1101
1099
  end
1102
1100
  end
1103
1101
 
Binary file
data/man.html CHANGED
@@ -83,7 +83,7 @@
83
83
 
84
84
  <ol class='man-decor man-head man head'>
85
85
  <li class='tl'>difects(1)</li>
86
- <li class='tc'>Version 3.0.0</li>
86
+ <li class='tc'>Version 3.0.1</li>
87
87
  <li class='tr'>difects(1)</li>
88
88
  </ol>
89
89
 
@@ -154,7 +154,7 @@ composing tests.</p>
154
154
  <p>Evaluates the given <var>FILE</var>s and also files matching the given <var>GLOB</var> patterns.</p>
155
155
 
156
156
  <p>The exit status of this command reflects the number of errors and assertion
157
- failures up to a maximum of 255 (to avoid 8-bit unsigned integer overflow).</p>
157
+ failures (up to a maximum of 255 to avoid 8-bit unsigned integer overflow).</p>
158
158
 
159
159
  <h2 id="OPTIONS">OPTIONS</h2>
160
160
 
@@ -183,22 +183,19 @@ end
183
183
  <h3 id="Hooks">Hooks</h3>
184
184
 
185
185
  <p>A <strong>hook</strong> is a scheduled point of entry into the test execution process. The
186
- <code>D()</code> method provides several of them:</p>
186
+ following <strong>hook methods</strong> allow you to register a block of code to execute
187
+ when a hook occurs:</p>
187
188
 
188
- <pre><code>D "outer test" do
189
- D .&lt; { puts "before each nested test" }
190
- D .&gt; { puts "after each nested test" }
191
- D .&lt;&lt; { puts "before all nested tests" }
192
- D .&gt;&gt; { puts "after all nested tests" }
189
+ <dl>
190
+ <dt class="flush"><code>D.&lt;()</code></dt><dd><p>Calls the given block <em>before each</em> child test.</p></dd>
191
+ <dt class="flush"><code>D.&gt;()</code></dt><dd><p>Calls the given block <em>after each</em> child test.</p></dd>
192
+ <dt class="flush"><code>D.&lt;&lt;()</code></dt><dd><p>Calls the given block <em>before all</em> child tests.</p></dd>
193
+ <dt class="flush"><code>D.&gt;&gt;()</code></dt><dd><p>Calls the given block <em>after all</em> child tests.</p></dd>
194
+ </dl>
193
195
 
194
- D "inner test" do
195
- # assertions and logic here
196
- end
197
- end
198
- </code></pre>
199
196
 
200
- <p>A hook method can be called multiple times. Every call to a hook method
201
- schedules additional logic to be executed during the hook:</p>
197
+ <p>A hook method can be called multiple times. Each additional call schedules
198
+ more logic to be executed during the hook:</p>
202
199
 
203
200
  <pre><code>D .&lt; { puts "do something" }
204
201
  D .&lt; { puts "do something more!" }
@@ -206,13 +203,13 @@ D .&lt; { puts "do something more!" }
206
203
 
207
204
  <h3 id="Insulation">Insulation</h3>
208
205
 
209
- <p>The <code>D!()</code> method defines a new test that is explicitly insulated from
210
- the tests that contain it and also from the top-level Ruby environment.
206
+ <p>The <code>D!()</code> method defines a new test that is explicitly insulated from the
207
+ tests that contain it and also from the top-level Ruby environment.
211
208
  Root-level calls to the <code>D()</code> method are insulated by default.</p>
212
209
 
213
210
  <p>Inside an insulated test, you are free to mix-in (using the <code>extend</code> keyword,
214
- not the <code>include</code> keyword) any modules your test logic needs and also define
215
- your own constants, methods, and classes.</p>
211
+ not the <code>include</code> keyword) any modules your test logic needs. You can also
212
+ define your own constants, methods, and classes.</p>
216
213
 
217
214
  <h3 id="Sharing">Sharing</h3>
218
215
 
@@ -232,7 +229,7 @@ method is called.</p></dd>
232
229
 
233
230
  <dl>
234
231
  <dt class="flush"><code>I()</code></dt><dd><p>Mechanism for inserting arbitrary Ruby objects into the test execution
235
- report. You can think of this method as a way to <em>inform</em> yourself.</p></dd>
232
+ report. You can think of this method as being a way to <em>inform</em> someone.</p></dd>
236
233
  <dt class="flush"><code>I!()</code></dt><dd><p>Starts the interactive debugger at the location where it is called.</p></dd>
237
234
  </dl>
238
235
 
@@ -244,7 +241,6 @@ report. You can think of this method as a way to <em>inform</em> yourself.</p><
244
241
  <p>You can configure the test execution process using:</p>
245
242
 
246
243
  <pre><code>DIFECTS.debug = your_choice_here
247
- DIFECTS.quiet = your_choice_here
248
244
  </code></pre>
249
245
 
250
246
  <p>You can execute all tests defined thus far using:</p>
@@ -361,11 +357,11 @@ recording a success or failure in the test execution report.</p>
361
357
  <p>Failure reports are composed of the following sections:</p>
362
358
 
363
359
  <dl>
364
- <dt class="flush">fail</dt><dd><p>Description of the assertion failure.</p></dd>
365
- <dt class="flush">call</dt><dd><p>Stack trace leading to the point of failure.</p></dd>
366
- <dt class="flush">code</dt><dd><p>Source code surrounding the point of failure.</p></dd>
367
- <dt class="flush">bind</dt><dd><p>Location where local variables (in the "vars" section) were extracted.</p></dd>
368
- <dt class="flush">vars</dt><dd><p>Local variables visible at the point of failure.</p></dd>
360
+ <dt class="flush"><code>:fail</code></dt><dd><p>Description of the assertion failure.</p></dd>
361
+ <dt class="flush"><code>:call</code></dt><dd><p>Stack trace leading to the point of failure.</p></dd>
362
+ <dt class="flush"><code>:code</code></dt><dd><p>Source code surrounding the point of failure.</p></dd>
363
+ <dt class="flush"><code>:bind</code></dt><dd><p>Location where local variables (in the "vars" section) were extracted.</p></dd>
364
+ <dt class="flush"><code>:vars</code></dt><dd><p>Local variables visible at the point of failure.</p></dd>
369
365
  </dl>
370
366
 
371
367
 
@@ -396,11 +392,11 @@ write your tests using the familiar syntax of the testing library it emulates.</
396
392
  <code>DIFECTS</code> module.</p>
397
393
 
398
394
  <dl>
399
- <dt><code>after</code>(<em>what</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/spec.rb#L21">lib/difects/spec.rb:21</a></p></dd>
400
- <dt><code>before</code>(<em>what</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/spec.rb#L10">lib/difects/spec.rb:10</a></p></dd>
401
- <dt><code>context</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
402
- <dt><code>describe</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
403
- <dt><code>it</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
395
+ <dt><code>after</code>(<em>what</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/spec.rb#L21">lib/difects/spec.rb:21</a>.</p></dd>
396
+ <dt><code>before</code>(<em>what</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/spec.rb#L10">lib/difects/spec.rb:10</a>.</p></dd>
397
+ <dt><code>context</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
398
+ <dt><code>describe</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
399
+ <dt><code>it</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
404
400
  </dl>
405
401
 
406
402
 
@@ -410,43 +406,43 @@ write your tests using the familiar syntax of the testing library it emulates.</
410
406
  <code>DIFECTS</code> module.</p>
411
407
 
412
408
  <dl>
413
- <dt><code>assert</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
414
- <dt><code>assert_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a></p></dd>
415
- <dt><code>assert_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a></p></dd>
416
- <dt><code>assert_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
417
- <dt><code>assert_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
418
- <dt><code>assert_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a></p></dd>
419
- <dt><code>assert_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a></p></dd>
420
- <dt><code>assert_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a></p></dd>
421
- <dt><code>assert_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a></p></dd>
422
- <dt><code>assert_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a></p></dd>
423
- <dt><code>assert_not</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
424
- <dt><code>assert_not_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a></p></dd>
425
- <dt><code>assert_not_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a></p></dd>
426
- <dt><code>assert_not_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
427
- <dt><code>assert_not_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
428
- <dt><code>assert_not_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a></p></dd>
429
- <dt><code>assert_not_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a></p></dd>
430
- <dt><code>assert_not_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a></p></dd>
431
- <dt><code>assert_not_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a></p></dd>
432
- <dt><code>assert_not_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a></p></dd>
433
- <dt><code>assert_not_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a></p></dd>
434
- <dt><code>assert_not_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a></p></dd>
435
- <dt><code>assert_not_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a></p></dd>
436
- <dt><code>assert_not_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a></p></dd>
437
- <dt><code>assert_not_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a></p></dd>
438
- <dt><code>assert_not_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a></p></dd>
439
- <dt><code>assert_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a></p></dd>
440
- <dt><code>assert_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a></p></dd>
441
- <dt><code>assert_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a></p></dd>
442
- <dt><code>assert_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a></p></dd>
443
- <dt><code>assert_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a></p></dd>
444
- <dt><code>assert_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a></p></dd>
445
- <dt><code>setup</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
446
- <dt><code>setup!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
447
- <dt><code>teardown</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
448
- <dt><code>teardown!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
449
- <dt><code>test</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
409
+ <dt><code>assert</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
410
+ <dt><code>assert_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a>.</p></dd>
411
+ <dt><code>assert_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a>.</p></dd>
412
+ <dt><code>assert_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
413
+ <dt><code>assert_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
414
+ <dt><code>assert_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a>.</p></dd>
415
+ <dt><code>assert_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a>.</p></dd>
416
+ <dt><code>assert_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a>.</p></dd>
417
+ <dt><code>assert_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a>.</p></dd>
418
+ <dt><code>assert_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a>.</p></dd>
419
+ <dt><code>assert_not</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
420
+ <dt><code>assert_not_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a>.</p></dd>
421
+ <dt><code>assert_not_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a>.</p></dd>
422
+ <dt><code>assert_not_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
423
+ <dt><code>assert_not_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
424
+ <dt><code>assert_not_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a>.</p></dd>
425
+ <dt><code>assert_not_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a>.</p></dd>
426
+ <dt><code>assert_not_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a>.</p></dd>
427
+ <dt><code>assert_not_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a>.</p></dd>
428
+ <dt><code>assert_not_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a>.</p></dd>
429
+ <dt><code>assert_not_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a>.</p></dd>
430
+ <dt><code>assert_not_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a>.</p></dd>
431
+ <dt><code>assert_not_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a>.</p></dd>
432
+ <dt><code>assert_not_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a>.</p></dd>
433
+ <dt><code>assert_not_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a>.</p></dd>
434
+ <dt><code>assert_not_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a>.</p></dd>
435
+ <dt><code>assert_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a>.</p></dd>
436
+ <dt><code>assert_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a>.</p></dd>
437
+ <dt><code>assert_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a>.</p></dd>
438
+ <dt><code>assert_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a>.</p></dd>
439
+ <dt><code>assert_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a>.</p></dd>
440
+ <dt><code>assert_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a>.</p></dd>
441
+ <dt><code>setup</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
442
+ <dt><code>setup!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
443
+ <dt><code>teardown</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
444
+ <dt><code>teardown!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
445
+ <dt><code>test</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
450
446
  </dl>
451
447
 
452
448
 
@@ -456,22 +452,22 @@ write your tests using the familiar syntax of the testing library it emulates.</
456
452
  <code>DIFECTS</code> module.</p>
457
453
 
458
454
  <dl>
459
- <dt><code>refute</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
460
- <dt><code>refute_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a></p></dd>
461
- <dt><code>refute_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a></p></dd>
462
- <dt><code>refute_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
463
- <dt><code>refute_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a></p></dd>
464
- <dt><code>refute_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a></p></dd>
465
- <dt><code>refute_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a></p></dd>
466
- <dt><code>refute_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a></p></dd>
467
- <dt><code>refute_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a></p></dd>
468
- <dt><code>refute_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a></p></dd>
469
- <dt><code>refute_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a></p></dd>
470
- <dt><code>refute_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a></p></dd>
471
- <dt><code>refute_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a></p></dd>
472
- <dt><code>refute_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a></p></dd>
473
- <dt><code>refute_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a></p></dd>
474
- <dt><code>refute_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a></p></dd>
455
+ <dt><code>refute</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
456
+ <dt><code>refute_empty</code>(<em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L26">lib/difects/unit.rb:26</a>.</p></dd>
457
+ <dt><code>refute_equal</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L31">lib/difects/unit.rb:31</a>.</p></dd>
458
+ <dt><code>refute_in_delta</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
459
+ <dt><code>refute_in_epsilon</code>(<em>expected</em>, <em>actual</em>, <em>delta</em>=nil, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L36">lib/difects/unit.rb:36</a>.</p></dd>
460
+ <dt><code>refute_include</code>(<em>item</em>, <em>collection</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L47">lib/difects/unit.rb:47</a>.</p></dd>
461
+ <dt><code>refute_instance_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L52">lib/difects/unit.rb:52</a>.</p></dd>
462
+ <dt><code>refute_kind_of</code>(<em>klass</em>, <em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L57">lib/difects/unit.rb:57</a>.</p></dd>
463
+ <dt><code>refute_match</code>(<em>pattern</em>, <em>string</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L67">lib/difects/unit.rb:67</a>.</p></dd>
464
+ <dt><code>refute_nil</code>(<em>object</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L62">lib/difects/unit.rb:62</a>.</p></dd>
465
+ <dt><code>refute_operator</code>(<em>object</em>, <em>operator</em>, <em>operand</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L77">lib/difects/unit.rb:77</a>.</p></dd>
466
+ <dt><code>refute_raise</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L82">lib/difects/unit.rb:82</a>.</p></dd>
467
+ <dt><code>refute_respond_to</code>(<em>object</em>, <em>query</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L86">lib/difects/unit.rb:86</a>.</p></dd>
468
+ <dt><code>refute_same</code>(<em>expected</em>, <em>actual</em>, <em>message</em>=nil)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L72">lib/difects/unit.rb:72</a>.</p></dd>
469
+ <dt><code>refute_send</code>(<em>object</em>, <em>query</em>, *<em>args</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L95">lib/difects/unit.rb:95</a>.</p></dd>
470
+ <dt><code>refute_throw</code>(<em>symbol</em>, <em>message</em>=nil, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects/unit.rb#L91">lib/difects/unit.rb:91</a>.</p></dd>
475
471
  </dl>
476
472
 
477
473
 
@@ -481,25 +477,25 @@ write your tests using the familiar syntax of the testing library it emulates.</
481
477
  <code>DIFECTS</code> module.</p>
482
478
 
483
479
  <dl>
484
- <dt><code>Catch</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
485
- <dt><code>Catch!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
486
- <dt><code>Catch?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
487
- <dt><code>Describe</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
488
- <dt><code>Describe!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
489
- <dt><code>Error</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
490
- <dt><code>Error!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
491
- <dt><code>Error?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
492
- <dt><code>False</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
493
- <dt><code>False!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
494
- <dt><code>False?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
495
- <dt><code>Inform</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
496
- <dt><code>Inform!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
497
- <dt><code>Share</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
498
- <dt><code>Share!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
499
- <dt><code>Share?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
500
- <dt><code>True</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
501
- <dt><code>True!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
502
- <dt><code>True?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>Defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1126">lib/difects.rb:1126</a></p></dd>
480
+ <dt><code>Catch</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
481
+ <dt><code>Catch!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
482
+ <dt><code>Catch?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
483
+ <dt><code>Describe</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
484
+ <dt><code>Describe!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
485
+ <dt><code>Error</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
486
+ <dt><code>Error!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
487
+ <dt><code>Error?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
488
+ <dt><code>False</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
489
+ <dt><code>False!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
490
+ <dt><code>False?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
491
+ <dt><code>Inform</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
492
+ <dt><code>Inform!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
493
+ <dt><code>Share</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
494
+ <dt><code>Share!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
495
+ <dt><code>Share?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
496
+ <dt><code>True</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
497
+ <dt><code>True!</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
498
+ <dt><code>True?</code>(*<em>args</em>, &amp;<em>block</em>)</dt><dd><p>This method is defined at <a href="http://github.com/sunaku/difects/tree/master/lib/difects.rb#L1124">lib/difects.rb:1124</a>.</p></dd>
503
499
  </dl>
504
500
 
505
501
 
@@ -556,7 +552,7 @@ end
556
552
  - Preparing spell to defeat mortal foes...
557
553
  - Magician:
558
554
  - Preparing rabbits to pull from hat...
559
- - 14
555
+ - 13
560
556
  - Calculator:
561
557
  - 3.141592653589793
562
558
  - - 1
@@ -567,7 +563,66 @@ end
567
563
  - c
568
564
  - foo: bar!
569
565
  ---
570
- time: 0.002947349
566
+ time: 0.00290479
567
+ </code></pre>
568
+
569
+ <h3 id="Using-hooks-to-perform-before-and-after-actions">Using hooks to perform before and after actions</h3>
570
+
571
+ <p>When the following test is run:</p>
572
+
573
+ <pre><code>require 'difects/auto'
574
+
575
+ D "outer test" do
576
+ D .&lt; { I "(outer hook) before each" }
577
+ D .&gt; { I "(outer hook) after each" }
578
+ D .&lt;&lt; { I "(outer hook) before all" }
579
+ D .&gt;&gt; { I "(outer hook) after all" }
580
+
581
+ D "inner test 1" do
582
+ D .&lt; { I "(inner hook) before each" }
583
+ D .&gt; { I "(inner hook) after each" }
584
+ D .&lt;&lt; { I "(inner hook) before all" }
585
+ D .&gt;&gt; { I "(inner hook) after all" }
586
+
587
+ D "inner test 1.1" do
588
+ I "hello world"
589
+ end
590
+ end
591
+
592
+ D "inner test 2" do
593
+ I "goodbye world"
594
+ end
595
+
596
+ D .&lt; { I "(outer hook) before each, again" }
597
+ D .&gt; { I "(outer hook) after each, again" }
598
+ end
599
+ </code></pre>
600
+
601
+ <p>DIFECTS will output the following:</p>
602
+
603
+ <pre><code>---
604
+ - outer test:
605
+ - (outer hook) before all
606
+ - (outer hook) before each
607
+ - (outer hook) before each, again
608
+ - inner test 1:
609
+ - (inner hook) before all
610
+ - (inner hook) before each
611
+ - inner test 1.1:
612
+ - hello world
613
+ - (inner hook) after each
614
+ - (inner hook) after all
615
+ - (outer hook) after each
616
+ - (outer hook) after each, again
617
+ - (outer hook) before each
618
+ - (outer hook) before each, again
619
+ - inner test 2:
620
+ - goodbye world
621
+ - (outer hook) after each
622
+ - (outer hook) after each, again
623
+ - (outer hook) after all
624
+ ---
625
+ time: 0.007519821
571
626
  </code></pre>
572
627
 
573
628
  <h3 id="Sharing-code-between-tests">Sharing code between tests</h3>
@@ -617,7 +672,7 @@ end
617
672
  - Power is power!
618
673
  ---
619
674
  pass: 3
620
- time: 0.007106484
675
+ time: 0.007250196
621
676
  </code></pre>
622
677
 
623
678
  <h3 id="Insulated-and-uninsulated-tests">Insulated and uninsulated tests</h3>
@@ -658,7 +713,7 @@ end
658
713
  - an inner, insulated test:
659
714
  ---
660
715
  pass: 10
661
- time: 0.007744531
716
+ time: 0.00794053
662
717
  </code></pre>
663
718
 
664
719
  <h2 id="HACKING">HACKING</h2>
@@ -746,6 +801,29 @@ in the <code>test/test_helper.rb</code> file.</p>
746
801
 
747
802
  <p>This section contains release notes of current and past releases.</p>
748
803
 
804
+ <h3 id="Version-3-0-1-2010-07-25-">Version 3.0.1 (2010-07-25)</h3>
805
+
806
+ <p>This release fixes a bug in Ruby 1.8, refactors the code, and better documents
807
+ test hooks in the manual.</p>
808
+
809
+ <p>Bug fixes:</p>
810
+
811
+ <ul>
812
+ <li>Ruby 1.8 does not pass value to <code>Hash#delete_if()</code>. All failure details
813
+ were being omitted, instead of just the unavailable ones, as a result.</li>
814
+ </ul>
815
+
816
+
817
+ <p>Housekeeping:</p>
818
+
819
+ <ul>
820
+ <li><p>Refactor variable values hash calculation and pretty printing logic.</p></li>
821
+ <li><p>Put FailureDetails pretty-printing modules into their own namespace.</p></li>
822
+ <li><p>Raise error if closest insulated test cannot be not found.</p></li>
823
+ <li><p>Describe all test hooks and add example to manual, plus small revisions.</p></li>
824
+ </ul>
825
+
826
+
749
827
  <h3 id="Version-3-0-0-2010-07-24-">Version 3.0.0 (2010-07-24)</h3>
750
828
 
751
829
  <p>This release renames the project to "DIFECTS", reduces cruft, improves the
@@ -1159,7 +1237,7 @@ Sean O'Halpin</p>
1159
1237
 
1160
1238
  <p>(the ISC license)</p>
1161
1239
 
1162
- <p>Copyright 2009 Suraj N. Kurapati <a href="&#x6d;&#x61;&#105;&#x6c;&#x74;&#111;&#58;&#x73;&#117;&#x6e;&#x61;&#107;&#x75;&#64;&#x67;&#x6d;&#x61;&#x69;&#108;&#46;&#99;&#111;&#109;" data-bare-link="true">&#115;&#117;&#110;&#97;&#107;&#117;&#x40;&#x67;&#x6d;&#97;&#x69;&#x6c;&#x2e;&#99;&#x6f;&#x6d;</a></p>
1240
+ <p>Copyright 2009 Suraj N. Kurapati <a href="&#109;&#x61;&#105;&#x6c;&#x74;&#x6f;&#58;&#x73;&#117;&#110;&#x61;&#107;&#x75;&#64;&#x67;&#109;&#97;&#x69;&#x6c;&#x2e;&#x63;&#x6f;&#x6d;" data-bare-link="true">&#x73;&#117;&#110;&#97;&#107;&#117;&#x40;&#103;&#109;&#x61;&#105;&#x6c;&#46;&#x63;&#x6f;&#109;</a></p>
1163
1241
 
1164
1242
  <p>Permission to use, copy, modify, and/or distribute this software for any
1165
1243
  purpose with or without fee is hereby granted, provided that the above
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 3
7
7
  - 0
8
- - 0
9
- version: 3.0.0
8
+ - 1
9
+ version: 3.0.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Suraj N. Kurapati
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-07-24 00:00:00 -07:00
17
+ date: 2010-07-25 00:00:00 -07:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency