rspec-core 2.8.0.rc1 → 2.8.0.rc2

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.
Files changed (73) hide show
  1. data/License.txt +24 -0
  2. data/README.md +197 -37
  3. data/features/command_line/format_option.feature +3 -3
  4. data/features/command_line/init.feature +18 -0
  5. data/features/example_groups/shared_examples.feature +1 -1
  6. data/features/hooks/around_hooks.feature +4 -4
  7. data/features/pending/pending_examples.feature +5 -5
  8. data/features/support/env.rb +8 -1
  9. data/lib/autotest/rspec2.rb +2 -6
  10. data/lib/rspec/core.rb +48 -158
  11. data/lib/rspec/core/backward_compatibility.rb +2 -0
  12. data/lib/rspec/core/command_line.rb +4 -0
  13. data/lib/rspec/core/configuration.rb +201 -106
  14. data/lib/rspec/core/configuration_options.rb +2 -1
  15. data/lib/rspec/core/deprecation.rb +2 -3
  16. data/lib/rspec/core/drb_options.rb +69 -58
  17. data/lib/rspec/core/dsl.rb +12 -0
  18. data/lib/rspec/core/example.rb +53 -18
  19. data/lib/rspec/core/example_group.rb +144 -54
  20. data/lib/rspec/core/extensions.rb +4 -4
  21. data/lib/rspec/core/extensions/instance_eval_with_args.rb +5 -0
  22. data/lib/rspec/core/extensions/kernel.rb +1 -1
  23. data/lib/rspec/core/extensions/module_eval_with_args.rb +4 -0
  24. data/lib/rspec/core/extensions/ordered.rb +7 -2
  25. data/lib/rspec/core/filter_manager.rb +69 -36
  26. data/lib/rspec/core/formatters/base_text_formatter.rb +1 -1
  27. data/lib/rspec/core/formatters/html_formatter.rb +10 -4
  28. data/lib/rspec/core/hooks.rb +93 -34
  29. data/lib/rspec/core/let.rb +62 -61
  30. data/lib/rspec/core/metadata.rb +103 -80
  31. data/lib/rspec/core/metadata_hash_builder.rb +4 -0
  32. data/lib/rspec/core/option_parser.rb +42 -44
  33. data/lib/rspec/core/pending.rb +25 -3
  34. data/lib/rspec/core/project_initializer.rb +62 -0
  35. data/lib/rspec/core/rake_task.rb +7 -13
  36. data/lib/rspec/core/runner.rb +2 -2
  37. data/lib/rspec/core/shared_context.rb +1 -1
  38. data/lib/rspec/core/shared_example_group.rb +11 -5
  39. data/lib/rspec/core/subject.rb +3 -3
  40. data/lib/rspec/core/version.rb +1 -1
  41. data/lib/rspec/monkey.rb +1 -1
  42. data/lib/rspec/monkey/spork/test_framework/rspec.rb +2 -0
  43. data/spec/command_line/order_spec.rb +19 -13
  44. data/spec/rspec/core/command_line_spec.rb +1 -5
  45. data/spec/rspec/core/configuration_options_spec.rb +22 -27
  46. data/spec/rspec/core/configuration_spec.rb +32 -14
  47. data/spec/rspec/core/drb_command_line_spec.rb +20 -37
  48. data/spec/rspec/core/drb_options_spec.rb +51 -3
  49. data/spec/rspec/core/example_group_spec.rb +101 -84
  50. data/spec/rspec/core/example_spec.rb +14 -0
  51. data/spec/rspec/core/filter_manager_spec.rb +114 -33
  52. data/spec/rspec/core/formatters/html_formatted-1.8.7-jruby.html +17 -69
  53. data/spec/rspec/core/formatters/html_formatted-1.8.7.html +14 -4
  54. data/spec/rspec/core/formatters/html_formatted-1.9.2.html +14 -4
  55. data/spec/rspec/core/formatters/html_formatted-1.9.3.html +14 -4
  56. data/spec/rspec/core/formatters/html_formatter_spec.rb +1 -1
  57. data/spec/rspec/core/formatters/text_mate_formatted-1.8.7-jruby.html +20 -72
  58. data/spec/rspec/core/formatters/text_mate_formatted-1.8.7.html +24 -14
  59. data/spec/rspec/core/formatters/text_mate_formatted-1.9.2.html +29 -19
  60. data/spec/rspec/core/formatters/text_mate_formatted-1.9.3.html +29 -19
  61. data/spec/rspec/core/formatters/text_mate_formatter_spec.rb +1 -2
  62. data/spec/rspec/core/metadata_spec.rb +77 -45
  63. data/spec/rspec/core/option_parser_spec.rb +5 -0
  64. data/spec/rspec/core/pending_example_spec.rb +44 -12
  65. data/spec/rspec/core/project_initializer_spec.rb +130 -0
  66. data/spec/rspec/core/rake_task_spec.rb +1 -1
  67. data/spec/spec_helper.rb +2 -0
  68. data/spec/support/matchers.rb +2 -12
  69. metadata +18 -16
  70. data/features/command_line/configure.feature +0 -22
  71. data/lib/rspec/core/command_line_configuration.rb +0 -62
  72. data/lib/rspec/core/errors.rb +0 -13
  73. data/spec/rspec/core/command_line_configuration_spec.rb +0 -26
@@ -155,6 +155,12 @@ dd {
155
155
  padding: 3px 3px 3px 18px;
156
156
  }
157
157
 
158
+ dd .duration {
159
+ padding-left: 5px;
160
+ text-align: right;
161
+ right: 0px;
162
+ float:right;
163
+ }
158
164
 
159
165
  dd.example.passed {
160
166
  border-left: 5px solid #65C400;
@@ -283,7 +289,7 @@ a {
283
289
  <script type="text/javascript">makeYellow('div_group_1');</script>
284
290
  <script type="text/javascript">makeYellow('example_group_1');</script>
285
291
  <script type="text/javascript">moveProgressBar('14.2');</script>
286
- <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not Yet Implemented)</span></dd>
292
+ <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not yet implemented)</span></dd>
287
293
  </dl>
288
294
  </div>
289
295
  <div id="div_group_2" class="example_group passed">
@@ -310,15 +316,16 @@ a {
310
316
  <script type="text/javascript">moveProgressBar('42.8');</script>
311
317
  <dd class="example pending_fixed">
312
318
  <span class="failed_spec_name">fails</span>
319
+ <span class="duration">n.nnnns</span>
313
320
  <div class="failure" id="failure_1">
314
- <div class="message"><pre>RSpec::Core::PendingExampleFixedError</pre></div>
321
+ <div class="message"><pre>RSpec::Core::Pending::PendingExampleFixedError</pre></div>
315
322
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=18">./spec/rspec/core/resources/formatter_specs.rb:18</a>
316
323
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a>
317
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a>
318
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
319
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a>
320
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
321
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> </pre></div>
324
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a>
325
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
326
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a>
327
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
328
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> </pre></div>
322
329
  <pre class="ruby"><code><span class="linenum">16</span> <span class="ident">context</span> <span class="punct">&quot;</span><span class="string">with content that would pass</span><span class="punct">&quot;</span> <span class="keyword">do</span>
323
330
  <span class="linenum">17</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
324
331
  <span class="offending"><span class="linenum">18</span> <span class="ident">pending</span> <span class="keyword">do</span></span>
@@ -332,7 +339,7 @@ a {
332
339
  <dl style="margin-left: 0px;">
333
340
  <dt id="example_group_5" class="passed">passing spec</dt>
334
341
  <script type="text/javascript">moveProgressBar('57.1');</script>
335
- <dd class="example passed"><span class="passed_spec_name">passes</span></dd>
342
+ <dd class="example passed"><span class="passed_spec_name">passes</span><span class='duration'>n.nnnns</span></dd>
336
343
  </dl>
337
344
  </div>
338
345
  <div id="div_group_6" class="example_group passed">
@@ -343,6 +350,7 @@ a {
343
350
  <script type="text/javascript">moveProgressBar('71.4');</script>
344
351
  <dd class="example failed">
345
352
  <span class="failed_spec_name">fails</span>
353
+ <span class="duration">n.nnnns</span>
346
354
  <div class="failure" id="failure_2">
347
355
  <div class="message"><pre>
348
356
  expected: 2
@@ -352,11 +360,11 @@ expected: 2
352
360
  </pre></div>
353
361
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=33">./spec/rspec/core/resources/formatter_specs.rb:33</a>
354
362
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a>
355
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a>
356
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
357
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a>
358
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
359
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> </pre></div>
363
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a>
364
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
365
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a>
366
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
367
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> </pre></div>
360
368
  <pre class="ruby"><code><span class="linenum">31</span><span class="ident">describe</span> <span class="punct">&quot;</span><span class="string">failing spec</span><span class="punct">&quot;</span> <span class="keyword">do</span>
361
369
  <span class="linenum">32</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
362
370
  <span class="offending"><span class="linenum">33</span> <span class="number">1</span><span class="punct">.</span><span class="ident">should</span> <span class="ident">eq</span><span class="punct">(</span><span class="number">2</span><span class="punct">)</span></span>
@@ -374,6 +382,7 @@ expected: 2
374
382
  <script type="text/javascript">moveProgressBar('85.7');</script>
375
383
  <dd class="example failed">
376
384
  <span class="failed_spec_name">fails with a backtrace that has no file</span>
385
+ <span class="duration">n.nnnns</span>
377
386
  <div class="failure" id="failure_3">
378
387
  <div class="message"><pre>foo</pre></div>
379
388
  <div class="backtrace"><pre>(erb):1</pre></div>
@@ -383,6 +392,7 @@ expected: 2
383
392
  <script type="text/javascript">moveProgressBar('100.0');</script>
384
393
  <dd class="example failed">
385
394
  <span class="failed_spec_name">fails with a backtrace containing an erb file</span>
395
+ <span class="duration">n.nnnns</span>
386
396
  <div class="failure" id="failure_4">
387
397
  <div class="message"><pre>Exception</pre></div>
388
398
  <div class="backtrace"><pre><a href="txmt://open?url=file:///foo.html.erb&line=1">/foo.html.erb:1</a> :in `&lt;main&gt;': foo (RuntimeError)</pre></div>
@@ -391,7 +401,7 @@ expected: 2
391
401
  </dd>
392
402
  </dl>
393
403
  </div>
394
- <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>x seconds</strong>";</script>
404
+ <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>n.nnnn seconds</strong>";</script>
395
405
  <script type="text/javascript">document.getElementById('totals').innerHTML = "7 examples, 4 failures, 2 pending";</script>
396
406
  </div>
397
407
  </div>
@@ -155,6 +155,12 @@ dd {
155
155
  padding: 3px 3px 3px 18px;
156
156
  }
157
157
 
158
+ dd .duration {
159
+ padding-left: 5px;
160
+ text-align: right;
161
+ right: 0px;
162
+ float:right;
163
+ }
158
164
 
159
165
  dd.example.passed {
160
166
  border-left: 5px solid #65C400;
@@ -283,7 +289,7 @@ a {
283
289
  <script type="text/javascript">makeYellow('div_group_1');</script>
284
290
  <script type="text/javascript">makeYellow('example_group_1');</script>
285
291
  <script type="text/javascript">moveProgressBar('14.2');</script>
286
- <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not Yet Implemented)</span></dd>
292
+ <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not yet implemented)</span></dd>
287
293
  </dl>
288
294
  </div>
289
295
  <div id="div_group_2" class="example_group passed">
@@ -310,15 +316,16 @@ a {
310
316
  <script type="text/javascript">moveProgressBar('42.8');</script>
311
317
  <dd class="example pending_fixed">
312
318
  <span class="failed_spec_name">fails</span>
319
+ <span class="duration">n.nnnns</span>
313
320
  <div class="failure" id="failure_1">
314
- <div class="message"><pre>RSpec::Core::PendingExampleFixedError</pre></div>
321
+ <div class="message"><pre>RSpec::Core::Pending::PendingExampleFixedError</pre></div>
315
322
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=18">./spec/rspec/core/resources/formatter_specs.rb:18</a> :in `block (3 levels) in &lt;top (required)&gt;'
316
323
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
317
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
318
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
319
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
320
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
321
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
324
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
325
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
326
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
327
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
328
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
322
329
  <pre class="ruby"><code><span class="linenum">16</span> <span class="ident">context</span> <span class="punct">&quot;</span><span class="string">with content that would pass</span><span class="punct">&quot;</span> <span class="keyword">do</span>
323
330
  <span class="linenum">17</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
324
331
  <span class="offending"><span class="linenum">18</span> <span class="ident">pending</span> <span class="keyword">do</span></span>
@@ -332,7 +339,7 @@ a {
332
339
  <dl style="margin-left: 0px;">
333
340
  <dt id="example_group_5" class="passed">passing spec</dt>
334
341
  <script type="text/javascript">moveProgressBar('57.1');</script>
335
- <dd class="example passed"><span class="passed_spec_name">passes</span></dd>
342
+ <dd class="example passed"><span class="passed_spec_name">passes</span><span class='duration'>n.nnnns</span></dd>
336
343
  </dl>
337
344
  </div>
338
345
  <div id="div_group_6" class="example_group passed">
@@ -343,6 +350,7 @@ a {
343
350
  <script type="text/javascript">moveProgressBar('71.4');</script>
344
351
  <dd class="example failed">
345
352
  <span class="failed_spec_name">fails</span>
353
+ <span class="duration">n.nnnns</span>
346
354
  <div class="failure" id="failure_2">
347
355
  <div class="message"><pre>
348
356
  expected: 2
@@ -352,11 +360,11 @@ expected: 2
352
360
  </pre></div>
353
361
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=33">./spec/rspec/core/resources/formatter_specs.rb:33</a> :in `block (2 levels) in &lt;top (required)&gt;'
354
362
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
355
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
356
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
357
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
358
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
359
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
363
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
364
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
365
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
366
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
367
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
360
368
  <pre class="ruby"><code><span class="linenum">31</span><span class="ident">describe</span> <span class="punct">&quot;</span><span class="string">failing spec</span><span class="punct">&quot;</span> <span class="keyword">do</span>
361
369
  <span class="linenum">32</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
362
370
  <span class="offending"><span class="linenum">33</span> <span class="number">1</span><span class="punct">.</span><span class="ident">should</span> <span class="ident">eq</span><span class="punct">(</span><span class="number">2</span><span class="punct">)</span></span>
@@ -374,22 +382,24 @@ expected: 2
374
382
  <script type="text/javascript">moveProgressBar('85.7');</script>
375
383
  <dd class="example failed">
376
384
  <span class="failed_spec_name">fails with a backtrace that has no file</span>
385
+ <span class="duration">n.nnnns</span>
377
386
  <div class="failure" id="failure_3">
378
387
  <div class="message"><pre>foo</pre></div>
379
388
  <div class="backtrace"><pre>(erb):1:in `&lt;main&gt;'
380
389
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=41">./spec/rspec/core/resources/formatter_specs.rb:41</a> :in `block (2 levels) in &lt;top (required)&gt;'
381
390
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
382
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
383
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
384
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
385
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
386
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
391
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
392
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
393
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
394
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
395
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
387
396
  <pre class="ruby"><code><span class="linenum">-1</span><span class="comment"># Couldn't get snippet for (erb)</span></code></pre>
388
397
  </div>
389
398
  </dd>
390
399
  <script type="text/javascript">moveProgressBar('100.0');</script>
391
400
  <dd class="example failed">
392
401
  <span class="failed_spec_name">fails with a backtrace containing an erb file</span>
402
+ <span class="duration">n.nnnns</span>
393
403
  <div class="failure" id="failure_4">
394
404
  <div class="message"><pre>Exception</pre></div>
395
405
  <div class="backtrace"><pre><a href="txmt://open?url=file:///foo.html.erb&line=1">/foo.html.erb:1</a> :in `&lt;main&gt;': foo (RuntimeError)</pre></div>
@@ -398,7 +408,7 @@ expected: 2
398
408
  </dd>
399
409
  </dl>
400
410
  </div>
401
- <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>x seconds</strong>";</script>
411
+ <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>n.nnnn seconds</strong>";</script>
402
412
  <script type="text/javascript">document.getElementById('totals').innerHTML = "7 examples, 4 failures, 2 pending";</script>
403
413
  </div>
404
414
  </div>
@@ -155,6 +155,12 @@ dd {
155
155
  padding: 3px 3px 3px 18px;
156
156
  }
157
157
 
158
+ dd .duration {
159
+ padding-left: 5px;
160
+ text-align: right;
161
+ right: 0px;
162
+ float:right;
163
+ }
158
164
 
159
165
  dd.example.passed {
160
166
  border-left: 5px solid #65C400;
@@ -283,7 +289,7 @@ a {
283
289
  <script type="text/javascript">makeYellow('div_group_1');</script>
284
290
  <script type="text/javascript">makeYellow('example_group_1');</script>
285
291
  <script type="text/javascript">moveProgressBar('14.2');</script>
286
- <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not Yet Implemented)</span></dd>
292
+ <dd class="example not_implemented"><span class="not_implemented_spec_name">is pending (PENDING: Not yet implemented)</span></dd>
287
293
  </dl>
288
294
  </div>
289
295
  <div id="div_group_2" class="example_group passed">
@@ -310,15 +316,16 @@ a {
310
316
  <script type="text/javascript">moveProgressBar('42.8');</script>
311
317
  <dd class="example pending_fixed">
312
318
  <span class="failed_spec_name">fails</span>
319
+ <span class="duration">n.nnnns</span>
313
320
  <div class="failure" id="failure_1">
314
- <div class="message"><pre>RSpec::Core::PendingExampleFixedError</pre></div>
321
+ <div class="message"><pre>RSpec::Core::Pending::PendingExampleFixedError</pre></div>
315
322
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=18">./spec/rspec/core/resources/formatter_specs.rb:18</a> :in `block (3 levels) in &lt;top (required)&gt;'
316
323
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
317
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
318
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
319
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
320
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
321
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
324
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
325
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
326
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
327
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
328
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
322
329
  <pre class="ruby"><code><span class="linenum">16</span> <span class="ident">context</span> <span class="punct">&quot;</span><span class="string">with content that would pass</span><span class="punct">&quot;</span> <span class="keyword">do</span>
323
330
  <span class="linenum">17</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
324
331
  <span class="offending"><span class="linenum">18</span> <span class="ident">pending</span> <span class="keyword">do</span></span>
@@ -332,7 +339,7 @@ a {
332
339
  <dl style="margin-left: 0px;">
333
340
  <dt id="example_group_5" class="passed">passing spec</dt>
334
341
  <script type="text/javascript">moveProgressBar('57.1');</script>
335
- <dd class="example passed"><span class="passed_spec_name">passes</span></dd>
342
+ <dd class="example passed"><span class="passed_spec_name">passes</span><span class='duration'>n.nnnns</span></dd>
336
343
  </dl>
337
344
  </div>
338
345
  <div id="div_group_6" class="example_group passed">
@@ -343,6 +350,7 @@ a {
343
350
  <script type="text/javascript">moveProgressBar('71.4');</script>
344
351
  <dd class="example failed">
345
352
  <span class="failed_spec_name">fails</span>
353
+ <span class="duration">n.nnnns</span>
346
354
  <div class="failure" id="failure_2">
347
355
  <div class="message"><pre>
348
356
  expected: 2
@@ -352,11 +360,11 @@ expected: 2
352
360
  </pre></div>
353
361
  <div class="backtrace"><pre><a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=33">./spec/rspec/core/resources/formatter_specs.rb:33</a> :in `block (2 levels) in &lt;top (required)&gt;'
354
362
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
355
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
356
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
357
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
358
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
359
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
363
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
364
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
365
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
366
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
367
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
360
368
  <pre class="ruby"><code><span class="linenum">31</span><span class="ident">describe</span> <span class="punct">&quot;</span><span class="string">failing spec</span><span class="punct">&quot;</span> <span class="keyword">do</span>
361
369
  <span class="linenum">32</span> <span class="ident">it</span> <span class="punct">&quot;</span><span class="string">fails</span><span class="punct">&quot;</span> <span class="keyword">do</span>
362
370
  <span class="offending"><span class="linenum">33</span> <span class="number">1</span><span class="punct">.</span><span class="ident">should</span> <span class="ident">eq</span><span class="punct">(</span><span class="number">2</span><span class="punct">)</span></span>
@@ -374,22 +382,24 @@ expected: 2
374
382
  <script type="text/javascript">moveProgressBar('85.7');</script>
375
383
  <dd class="example failed">
376
384
  <span class="failed_spec_name">fails with a backtrace that has no file</span>
385
+ <span class="duration">n.nnnns</span>
377
386
  <div class="failure" id="failure_3">
378
387
  <div class="message"><pre>foo</pre></div>
379
388
  <div class="backtrace"><pre>(erb):1:in `&lt;main&gt;'
380
389
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/resources/formatter_specs.rb&line=41">./spec/rspec/core/resources/formatter_specs.rb:41</a> :in `block (2 levels) in &lt;top (required)&gt;'
381
390
  <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=24">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:24</a> :in `block (2 levels) in &lt;module:Formatters&gt;'
382
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
383
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `open'
384
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=47">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:47</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
385
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `chdir'
386
- <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
391
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (5 levels) in &lt;module:Formatters&gt;'
392
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `open'
393
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=46">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:46</a> :in `block (4 levels) in &lt;module:Formatters&gt;'
394
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `chdir'
395
+ <a href="txmt://open?url=file:///Users/david/projects/ruby/rspec2/repos/rspec-core/spec/rspec/core/formatters/text_mate_formatter_spec.rb&line=45">./spec/rspec/core/formatters/text_mate_formatter_spec.rb:45</a> :in `block (3 levels) in &lt;module:Formatters&gt;'</pre></div>
387
396
  <pre class="ruby"><code><span class="linenum">-1</span><span class="comment"># Couldn't get snippet for (erb)</span></code></pre>
388
397
  </div>
389
398
  </dd>
390
399
  <script type="text/javascript">moveProgressBar('100.0');</script>
391
400
  <dd class="example failed">
392
401
  <span class="failed_spec_name">fails with a backtrace containing an erb file</span>
402
+ <span class="duration">n.nnnns</span>
393
403
  <div class="failure" id="failure_4">
394
404
  <div class="message"><pre>Exception</pre></div>
395
405
  <div class="backtrace"><pre><a href="txmt://open?url=file:///foo.html.erb&line=1">/foo.html.erb:1</a> :in `&lt;main&gt;': foo (RuntimeError)</pre></div>
@@ -398,7 +408,7 @@ expected: 2
398
408
  </dd>
399
409
  </dl>
400
410
  </div>
401
- <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>x seconds</strong>";</script>
411
+ <script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>n.nnnn seconds</strong>";</script>
402
412
  <script type="text/javascript">document.getElementById('totals').innerHTML = "7 examples, 4 failures, 2 pending";</script>
403
413
  </div>
404
414
  </div>
@@ -22,8 +22,7 @@ module RSpec
22
22
  err, out = StringIO.new, StringIO.new
23
23
  command_line = RSpec::Core::CommandLine.new(options)
24
24
  command_line.run(err, out)
25
- out.string.gsub(/\d+\.\d+ seconds/, 'x seconds')
26
-
25
+ out.string.gsub(/\d+\.\d+(s| seconds)/, "n.nnnn\\1")
27
26
  end
28
27
 
29
28
  let(:expected_html) do
@@ -131,6 +131,36 @@ module RSpec
131
131
  example_metadata.filter_applies?(:if, lambda { |v, m| passed_metadata = m })
132
132
  passed_metadata.should eq(example_metadata)
133
133
  end
134
+
135
+ context "with an Array" do
136
+ let(:metadata_with_array) {
137
+ group_metadata.for_example('example_with_array', :tag => [:one, 2, 'three', /four/])
138
+ }
139
+
140
+ it "matches a symbol" do
141
+ metadata_with_array.filter_applies?(:tag, 'one').should be_true
142
+ metadata_with_array.filter_applies?(:tag, :one).should be_true
143
+ metadata_with_array.filter_applies?(:tag, 'two').should be_false
144
+ end
145
+
146
+ it "matches a string" do
147
+ metadata_with_array.filter_applies?(:tag, 'three').should be_true
148
+ metadata_with_array.filter_applies?(:tag, :three).should be_true
149
+ metadata_with_array.filter_applies?(:tag, 'tree').should be_false
150
+ end
151
+
152
+ it "matches an integer" do
153
+ metadata_with_array.filter_applies?(:tag, '2').should be_true
154
+ metadata_with_array.filter_applies?(:tag, 2).should be_true
155
+ metadata_with_array.filter_applies?(:tag, 3).should be_false
156
+ end
157
+
158
+ it "matches a regexp" do
159
+ metadata_with_array.filter_applies?(:tag, 'four').should be_true
160
+ metadata_with_array.filter_applies?(:tag, 'fourtune').should be_true
161
+ metadata_with_array.filter_applies?(:tag, 'fortune').should be_false
162
+ end
163
+ end
134
164
  end
135
165
 
136
166
  describe "#for_example" do
@@ -179,69 +209,71 @@ module RSpec
179
209
  end
180
210
  end
181
211
 
182
- describe ":describes" do
183
- context "with a String" do
184
- it "returns nil" do
185
- m = Metadata.new
186
- m.process('group')
212
+ [:described_class, :describes].each do |key|
213
+ describe key do
214
+ context "with a String" do
215
+ it "returns nil" do
216
+ m = Metadata.new
217
+ m.process('group')
187
218
 
188
- m[:example_group][:describes].should be_nil
219
+ m[:example_group][key].should be_nil
220
+ end
189
221
  end
190
- end
191
222
 
192
- context "with a Symbol" do
193
- it "returns nil" do
194
- m = Metadata.new
195
- m.process(:group)
223
+ context "with a Symbol" do
224
+ it "returns nil" do
225
+ m = Metadata.new
226
+ m.process(:group)
196
227
 
197
- m[:example_group][:describes].should be_nil
228
+ m[:example_group][key].should be_nil
229
+ end
198
230
  end
199
- end
200
231
 
201
- context "with a class" do
202
- it "returns the class" do
203
- m = Metadata.new
204
- m.process(String)
232
+ context "with a class" do
233
+ it "returns the class" do
234
+ m = Metadata.new
235
+ m.process(String)
205
236
 
206
- m[:example_group][:describes].should be(String)
237
+ m[:example_group][key].should be(String)
238
+ end
207
239
  end
208
- end
209
240
 
210
- context "in a nested group" do
211
- it "returns the parent group's described class" do
212
- sm = Metadata.new
213
- sm.process(String)
241
+ context "in a nested group" do
242
+ it "returns the parent group's described class" do
243
+ sm = Metadata.new
244
+ sm.process(String)
214
245
 
215
- m = Metadata.new(sm)
216
- m.process(Array)
246
+ m = Metadata.new(sm)
247
+ m.process(Array)
217
248
 
218
- m[:example_group][:describes].should be(String)
219
- end
249
+ m[:example_group][key].should be(String)
250
+ end
220
251
 
221
- it "returns own described class if parent doesn't have one" do
222
- sm = Metadata.new
223
- sm.process("foo")
252
+ it "returns own described class if parent doesn't have one" do
253
+ sm = Metadata.new
254
+ sm.process("foo")
224
255
 
225
- m = Metadata.new(sm)
226
- m.process(Array)
256
+ m = Metadata.new(sm)
257
+ m.process(Array)
227
258
 
228
- m[:example_group][:describes].should be(Array)
229
- end
259
+ m[:example_group][key].should be(Array)
260
+ end
230
261
 
231
- it "can override a parent group's described class" do
232
- parent = Metadata.new
233
- parent.process(String)
262
+ it "can override a parent group's described class" do
263
+ parent = Metadata.new
264
+ parent.process(String)
234
265
 
235
- child = Metadata.new(parent)
236
- child.process(Fixnum)
237
- child[:example_group][:describes] = Hash
266
+ child = Metadata.new(parent)
267
+ child.process(Fixnum)
268
+ child[:example_group][key] = Hash
238
269
 
239
- grandchild = Metadata.new(child)
240
- grandchild.process(Array)
270
+ grandchild = Metadata.new(child)
271
+ grandchild.process(Array)
241
272
 
242
- grandchild[:example_group][:describes].should be(Hash)
243
- child[:example_group][:describes].should be(Hash)
244
- parent[:example_group][:describes].should be(String)
273
+ grandchild[:example_group][key].should be(Hash)
274
+ child[:example_group][key].should be(Hash)
275
+ parent[:example_group][key].should be(String)
276
+ end
245
277
  end
246
278
  end
247
279
  end