difects 3.0.0 → 3.0.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.
@@ -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