rspec-ontap 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (10) hide show
  1. checksums.yaml +7 -0
  2. data/.index +56 -0
  3. data/.yardopts +3 -1
  4. data/HISTORY.md +11 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +26 -9
  7. data/lib/rspec/ontap.rb +174 -59
  8. metadata +49 -27
  9. data/.ruby +0 -38
  10. data/COPYING.rdoc +0 -32
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 6ef09b51496338e3c6b5091d3ce38aecd3020da0
4
+ data.tar.gz: d59e58f5b115d74d1ef25fe37491bc0cbd33ae9f
5
+ SHA512:
6
+ metadata.gz: 2cc6d1be7dd968bbe18991b72bcc81672a65554101ceb18f61a89023cecc86d0463ceb4ef27f3b3daa8d8cf092a92bf8e705bcaf5ea5a8ab8069c18f5903e36c
7
+ data.tar.gz: b1933d4b045be9f482e77f0e8b0e1bfcce2f4bb47e812c939743008dd9ca31e1ce0991dec44709c74f85d37394cb9ed6cc9fe468992cc1ad7f3bbe36a9abc681
data/.index ADDED
@@ -0,0 +1,56 @@
1
+ ---
2
+ revision: 2013
3
+ type: ruby
4
+ sources:
5
+ - INDEX.yml
6
+ authors:
7
+ - name: Trans
8
+ email: transfire@gmail.com
9
+ organizations:
10
+ - name: Rubyworks
11
+ requirements:
12
+ - name: rspec
13
+ - name: tapout
14
+ - groups:
15
+ - build
16
+ development: true
17
+ name: mast
18
+ - groups:
19
+ - build
20
+ development: true
21
+ name: indexer
22
+ conflicts: []
23
+ alternatives: []
24
+ resources:
25
+ - type: home
26
+ uri: http://rubyworks.github.com/rspec-ontap
27
+ label: Homepage
28
+ - type: code
29
+ uri: http://github.com/rubyworks/rspec-ontap
30
+ label: Source Code
31
+ - type: bugs
32
+ uri: http://github.com/rubyworks/rspec-ontap/issues
33
+ label: Issue Tracker
34
+ - type: chat
35
+ uri: irc://chat.us.freenode.net#rubyworks
36
+ label: IRC Channel
37
+ repositories:
38
+ - name: upstream
39
+ scm: git
40
+ uri: git://github.com/rubyworks/rspec-ontap.git
41
+ categories: []
42
+ copyrights:
43
+ - holder: Rubyworks
44
+ year: '2011'
45
+ license: BSD-2-Clause
46
+ customs: []
47
+ paths:
48
+ lib:
49
+ - lib
50
+ name: rspec-ontap
51
+ title: RSpec-On-Tap
52
+ version: 0.3.0
53
+ summary: RSpec On Tap-Y/J
54
+ description: RSpec-On-Tap is a TAP-Y/J formatter for RSpec.
55
+ created: '2011-12-13'
56
+ date: '2015-01-17'
data/.yardopts CHANGED
@@ -3,5 +3,7 @@
3
3
  --private
4
4
  lib/
5
5
  -
6
- [A-Z]*.*
6
+ *.md
7
+ *.txt
8
+ *.yml
7
9
 
data/HISTORY.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Release History
2
2
 
3
+ ## 0.3.0 / 2014-01-17
4
+
5
+ This is a major overhaul of the formatter to work with RSpec 3+.
6
+ It will no longer work with older versions of RSpec! Please use
7
+ version 0.2.0 of this plugin if you need that.
8
+
9
+ Changes:
10
+
11
+ * Register formmater per new RSpec 3 API.
12
+ * Change callback methods to use v3 Notification classes.
13
+
3
14
 
4
15
  ## 0.2.0 / 2012-02-01
5
16
 
@@ -0,0 +1,21 @@
1
+ Redistribution and use in source and binary forms, with or without
2
+ modification, are permitted provided that the following conditions are met:
3
+
4
+ 1. Redistributions of source code must retain the above copyright notice,
5
+ this list of conditions and the following disclaimer.
6
+
7
+ 2. Redistributions in binary form must reproduce the above copyright
8
+ notice, this list of conditions and the following disclaimer in the
9
+ documentation and/or other materials provided with the distribution.
10
+
11
+ THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
12
+ INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
13
+ AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
14
+ COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
15
+ INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
16
+ NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
17
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
18
+ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
19
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
20
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
21
+
data/README.md CHANGED
@@ -9,27 +9,38 @@
9
9
 
10
10
  **RSpec On Tap** is a TAP-Y/J formatter for RSpec.
11
11
 
12
+ The latest version works with **RSpec 3+ only**.
13
+
12
14
  You can learn more about TAP-Y/J [here](https://github.com/rubyworks/tapout).
13
15
 
14
16
 
15
17
  ## Usage
16
18
 
17
- Usage is simply a matter of passing the name of the format class to
18
- the `rspec` command via the `-f` option.
19
+ Usage is simply a matter of requiring the plugin and passing the name of the
20
+ format class to the `rspec` command via the `-f` option.
19
21
 
20
- $ rspec -r rspec/ontap -f TapY spec/*.rb
22
+ $ rspec -r rspec/ontap -f RSpec::TapY spec/*.rb
21
23
 
22
- or
24
+ This can be shortened to just:
23
25
 
24
26
  $ rspec -f RSpec::TapY spec/*.rb
25
27
 
26
- With TAP-Y in hand, the `tapout` tool can then be used to produce a
27
- variety of other output formats. For example:
28
+ This works because RSpec will automatically require a related path -- in this
29
+ case `rspec/tap_y` -- if the class if initially undefined. The library file
30
+ `rspec/tap_y` itself simply requires `rspec/ontap` (the same is true for
31
+ `rspec/tap_j`).
32
+
33
+ With TAP-Y output in hand, the `tapout` tool can then be used to produce a
34
+ variety of other output formats. First, make sure Tapout is installed:
35
+
36
+ $ gem install tapout
37
+
38
+ Then, for example:
28
39
 
29
40
  $ rspec -f RSpec::TapY spec/*.rb | tapout progress
30
41
 
31
- See the [TapOut project](http://rubyworks.github.com/tapout) for more
32
- information.
42
+ See the [TapOut project](http://rubyworks.github.com/tapout) for more information.
43
+
33
44
 
34
45
 
35
46
  ## Installation
@@ -38,6 +49,12 @@ Installation follows the usual pattern:
38
49
 
39
50
  $ gem install rspec-ontap
40
51
 
52
+ Or using your Gemfile, add something like:
53
+
54
+ group :test do
55
+ gem "rspec-ontap", :require => false
56
+ end
57
+
41
58
 
42
59
  ## Copyrights
43
60
 
@@ -45,5 +62,5 @@ Copyright (c) 2011 Rubyworks. All Rights Reserved.
45
62
 
46
63
  RSpecOnTap is distributable in accordance with the *FreeBSD* license.
47
64
 
48
- See COPYING.md for details.
65
+ See LICENSE.txt for details.
49
66
 
@@ -13,8 +13,6 @@ module RSpec
13
13
  #
14
14
  attr_accessor :example_group_stack
15
15
 
16
- #
17
- #
18
16
  #
19
17
  def initialize(output)
20
18
  super(output)
@@ -29,15 +27,16 @@ module RSpec
29
27
  # This will only be invoked once, and the next one to be invoked
30
28
  # is #example_group_started
31
29
  #
32
- def start(example_count)
33
- super(example_count)
30
+ def start(notification)
31
+ # there is a super method for this
32
+ super(notification)
34
33
 
35
34
  @start_time = Time.now
36
35
 
37
36
  doc = {
38
37
  'type' => 'suite',
39
38
  'start' => @start_time.strftime('%Y-%m-%d %H:%M:%S'),
40
- 'count' => example_count,
39
+ 'count' => notification.count,
41
40
  'seed' => @seed,
42
41
  'rev' => REVISION
43
42
  }
@@ -51,12 +50,13 @@ module RSpec
51
50
  # The next method to be invoked after this is +example_passed+,
52
51
  # +example_pending+, or +example_finished+
53
52
  #
54
- def example_group_started(example_group)
55
- super(example_group) #@example_group = example_group
53
+ def example_group_started(notification)
54
+ # there is a super method for this
55
+ super(notification)
56
56
  doc = {
57
57
  'type' => 'case',
58
58
  'subtype' => 'describe',
59
- 'label' => "#{example_group.description}",
59
+ 'label' => "#{notification.group.description}",
60
60
  'level' => @example_group_stack.size
61
61
  }
62
62
  @example_group_stack << example_group
@@ -65,20 +65,24 @@ module RSpec
65
65
 
66
66
  # This method is invoked at the end of the execution of each example group.
67
67
  # +example_group+ is the example_group.
68
- def example_group_finished(example_group)
68
+ def example_group_finished(notification)
69
+ #super(notification)
69
70
  @example_group_stack.pop
70
71
  end
71
72
 
73
+ # Set up stdout and stderr to be captured.
74
+ #
75
+ # IMPORTANT: Comment out the `reset_output` line to debug!!!!!!!!!
72
76
  #
73
- def example_started(example)
74
- examples << example
75
- # set up stdout and stderr to be captured
77
+ def example_started(notification)
76
78
  reset_output
77
79
  end
78
80
 
79
81
  #
80
- def example_passed(example)
81
- super(example)
82
+ def example_passed(notification)
83
+ #super(notification)
84
+
85
+ example = notification.example
82
86
 
83
87
  file, line = example.location.split(':')
84
88
  file = self.class.relative_path(file)
@@ -110,8 +114,10 @@ module RSpec
110
114
  end
111
115
 
112
116
  #
113
- def example_pending(example)
114
- super(example)
117
+ def example_pending(notification)
118
+ #super(notification)
119
+
120
+ example = notification.example
115
121
 
116
122
  file, line = example.location.split(':')
117
123
  file = self.class.relative_path(file)
@@ -140,12 +146,15 @@ module RSpec
140
146
  return doc
141
147
  end
142
148
 
143
- def example_failed(example)
144
- super(example)
149
+ #
150
+ def example_failed(notification)
151
+ #super(notification)
152
+
153
+ example = notification.example
145
154
 
146
155
  file, line = example.location.split(':')
147
156
 
148
- file = self.class.relative_path(file)
157
+ file = relative_path(file)
149
158
  line = line.to_i
150
159
 
151
160
  if RSpec::Expectations::ExpectationNotMetError === example.exception
@@ -159,7 +168,7 @@ module RSpec
159
168
  status = 'error'
160
169
  end
161
170
 
162
- backtrace = format_backtrace(example.exception.backtrace, example)
171
+ backtrace = format_backtrace(example.exception.backtrace, example.metadata)
163
172
 
164
173
  efile, eline = parse_source_location(backtrace)
165
174
 
@@ -206,20 +215,20 @@ module RSpec
206
215
  return doc
207
216
  end
208
217
 
209
- # @todo Is this a note?
210
- def message(message)
211
- end
218
+ # This method is invoked after the dumping of examples and failures.
219
+ def dump_summary(summary_notification)
220
+ #super(summary_notification)
212
221
 
213
- #def stop
214
- #end
222
+ duration = summary_notification.duration
223
+ example_count = summary_notification.examples.size
224
+ failure_count = summary_notification.failed_examples.size
225
+ pending_count = summary_notification.pending_examples.size
215
226
 
216
- # This method is invoked after the dumping of examples and failures.
217
- def dump_summary(duration, example_count, failure_count, pending_count)
218
- super(duration, example_count, failure_count, pending_count)
227
+ failed_examples = summary_notification.failed_examples
219
228
 
220
229
  error_count = 0
221
230
 
222
- @failed_examples.each do |e|
231
+ failed_examples.each do |e|
223
232
  if RSpec::Expectations::ExpectationNotMetError === e.exception
224
233
  #failure_count += 1
225
234
  else
@@ -249,8 +258,45 @@ module RSpec
249
258
  #def dump_pending
250
259
  #end
251
260
 
252
- def seed(number)
253
- @seed = number
261
+ def seed(notification)
262
+ @seed = notification.seed
263
+ end
264
+
265
+ # Add any messages as notes.
266
+ def message(message_notification)
267
+ doc = {
268
+ 'type' => 'note',
269
+ 'text' => message_notification.message
270
+ }
271
+ return doc
272
+ end
273
+
274
+ #
275
+ # NOTE: None of the following are being used. If ever added, be sure
276
+ # to activate in register calls below.
277
+ #
278
+
279
+ # (not used)
280
+ def stop(examples_notification)
281
+ super(examples_notification)
282
+ end
283
+
284
+ # (not used)
285
+ def start_dump(null_notification)
286
+ end
287
+
288
+ # (not used)
289
+ def dump_pending(examples_notification)
290
+ end
291
+
292
+ # (not used)
293
+ def dump_failures(examples_notification)
294
+ end
295
+
296
+ # (not used)
297
+ def close(null_notification)
298
+ # there is a super method for this
299
+ super(null_notification)
254
300
  end
255
301
 
256
302
  private
@@ -308,6 +354,8 @@ module RSpec
308
354
 
309
355
  #
310
356
  def captured_output
357
+ return unless (@_newout && @_newerr)
358
+
311
359
  stdout = @_newout.string.chomp("\n")
312
360
  stderr = @_newerr.string.chomp("\n")
313
361
 
@@ -335,58 +383,125 @@ module RSpec
335
383
  $stderr = ostderr
336
384
  end
337
385
 
386
+ #
387
+ def relative_path_regex
388
+ @relative_path_regex ||= /(\A|\s)#{File.expand_path('.')}(#{File::SEPARATOR}|\s|\Z)/
389
+ end
390
+
391
+ # Get relative path of file.
392
+ #
393
+ # line - current code line [String]
394
+ #
395
+ # Returns relative path to line. [String]
396
+ def relative_path(line)
397
+ line = line.sub(relative_path_regex, "\\1.\\2".freeze)
398
+ line = line.sub(/\A([^:]+:\d+)$/, '\\1'.freeze)
399
+ return nil if line == '-e:1'.freeze
400
+ line
401
+ rescue SecurityError
402
+ nil
403
+ end
404
+
405
+ #
406
+ def format_backtrace(*args)
407
+ backtrace_formatter.format_backtrace(*args)
408
+ end
409
+
410
+ #
411
+ def backtrace_formatter
412
+ RSpec.configuration.backtrace_formatter
413
+ end
414
+
338
415
  end
339
416
 
340
417
  #
341
418
  class TapY < TapBaseFormatter
342
- def initialize(*whatever)
419
+ ::RSpec::Core::Formatters.register self,
420
+ :start,
421
+ :example_group_started,
422
+ :example_group_finished,
423
+ :example_started,
424
+ :example_passed,
425
+ :example_failed,
426
+ :example_pending,
427
+ :dump_summary,
428
+ :seed,
429
+ :message,
430
+ #:stop,
431
+ #:start_dump,
432
+ #:dump_pending,
433
+ #:dump_failures,
434
+ :close
435
+
436
+ def initialize(*args)
343
437
  require 'yaml'
344
- super(*whatever)
438
+ super(*args)
345
439
  end
346
- def start(example_count)
347
- output.puts super(example_count).to_yaml
440
+ def start(*args)
441
+ output.puts super(*args).to_yaml
348
442
  end
349
- def example_group_started(example_group)
350
- output.puts super(example_group).to_yaml
443
+ def example_group_started(*args)
444
+ output.puts super(*args).to_yaml
351
445
  end
352
- def example_passed(example)
353
- output.puts super(example).to_yaml
446
+ def example_passed(*args)
447
+ output.puts super(*args).to_yaml
354
448
  end
355
- def example_pending(example)
356
- output.puts super(example).to_yaml
449
+ def example_pending(*args)
450
+ output.puts super(*args).to_yaml
357
451
  end
358
- def example_failed(example)
359
- output.puts super(example).to_yaml
452
+ def example_failed(*args)
453
+ output.puts super(*args).to_yaml
360
454
  end
361
- def dump_summary(duration, example_count, failure_count, pending_count)
362
- output.puts super(duration, example_count, failure_count, pending_count).to_yaml
455
+ #def dump_summary(duration, example_count, failure_count, pending_count)
456
+ # output.puts super(duration, example_count, failure_count, pending_count).to_yaml
457
+ # output.puts "..."
458
+ #end
459
+ def dump_summary(*args)
460
+ output.puts super(*args).to_yaml
363
461
  output.puts "..."
364
462
  end
365
463
  end
366
464
 
367
465
  #rspec -f RSpec::TapY spec/*.rb | tapout progress
368
466
  class TapJ < TapBaseFormatter
369
- def initialize(*whatever)
467
+ ::RSpec::Core::Formatters.register self,
468
+ :start,
469
+ :example_group_started,
470
+ :example_group_finished,
471
+ :example_started,
472
+ :example_passed,
473
+ :example_failed,
474
+ :example_pending,
475
+ :dump_summary,
476
+ :seed,
477
+ :message,
478
+ #:stop,
479
+ #:start_dump,
480
+ #:dump_pending,
481
+ #:dump_failures,
482
+ :close
483
+
484
+ def initialize(*args)
370
485
  require 'json'
371
- super(*whatever)
486
+ super(*args)
372
487
  end
373
- def start(example_count)
374
- output.puts super(example_count).to_json
488
+ def start(*args)
489
+ output.puts super(*args).to_json
375
490
  end
376
- def example_group_started(example_group)
377
- output.puts super(example_group).to_json
491
+ def example_group_started(*args)
492
+ output.puts super(*args).to_json
378
493
  end
379
- def example_passed(example)
380
- output.puts super(example).to_json
494
+ def example_passed(*args)
495
+ output.puts super(*args).to_json
381
496
  end
382
- def example_pending(example)
383
- output.puts super(example).to_json
497
+ def example_pending(*args)
498
+ output.puts super(*args).to_json
384
499
  end
385
- def example_failed(example)
386
- output.puts super(example).to_json
500
+ def example_failed(*args)
501
+ output.puts super(*args).to_json
387
502
  end
388
- def dump_summary(duration, example_count, failure_count, pending_count)
389
- output.puts super(duration, example_count, failure_count, pending_count).to_json
503
+ def dump_summary(*args)
504
+ output.puts super(*args).to_json
390
505
  end
391
506
  end
392
507
 
metadata CHANGED
@@ -1,90 +1,112 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rspec-ontap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Trans
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-02-01 00:00:00.000000000 Z
11
+ date: 2015-01-17 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rspec
16
- requirement: &11523640 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - '>='
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *11523640
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
25
27
  - !ruby/object:Gem::Dependency
26
28
  name: tapout
27
- requirement: &11522360 !ruby/object:Gem::Requirement
28
- none: false
29
+ requirement: !ruby/object:Gem::Requirement
29
30
  requirements:
30
- - - ! '>='
31
+ - - '>='
31
32
  - !ruby/object:Gem::Version
32
33
  version: '0'
33
34
  type: :runtime
34
35
  prerelease: false
35
- version_requirements: *11522360
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: mast
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
36
55
  - !ruby/object:Gem::Dependency
37
- name: detroit
38
- requirement: &11521320 !ruby/object:Gem::Requirement
39
- none: false
56
+ name: indexer
57
+ requirement: !ruby/object:Gem::Requirement
40
58
  requirements:
41
- - - ! '>='
59
+ - - '>='
42
60
  - !ruby/object:Gem::Version
43
61
  version: '0'
44
62
  type: :development
45
63
  prerelease: false
46
- version_requirements: *11521320
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
47
69
  description: RSpec-On-Tap is a TAP-Y/J formatter for RSpec.
48
70
  email:
49
71
  - transfire@gmail.com
50
72
  executables: []
51
73
  extensions: []
52
74
  extra_rdoc_files:
53
- - COPYING.rdoc
54
- - HISTORY.md
75
+ - LICENSE.txt
55
76
  - README.md
77
+ - HISTORY.md
56
78
  files:
57
- - .ruby
79
+ - .index
58
80
  - .yardopts
59
81
  - lib/rspec/ontap.rb
60
82
  - lib/rspec/tap_j.rb
61
83
  - lib/rspec/tap_y.rb
62
- - HISTORY.md
63
84
  - README.md
64
- - COPYING.rdoc
85
+ - HISTORY.md
86
+ - LICENSE.txt
65
87
  homepage: http://rubyworks.github.com/rspec-ontap
66
88
  licenses:
67
89
  - BSD-2-Clause
90
+ metadata: {}
68
91
  post_install_message:
69
92
  rdoc_options: []
70
93
  require_paths:
71
94
  - lib
72
95
  required_ruby_version: !ruby/object:Gem::Requirement
73
- none: false
74
96
  requirements:
75
- - - ! '>='
97
+ - - '>='
76
98
  - !ruby/object:Gem::Version
77
99
  version: '0'
78
100
  required_rubygems_version: !ruby/object:Gem::Requirement
79
- none: false
80
101
  requirements:
81
- - - ! '>='
102
+ - - '>='
82
103
  - !ruby/object:Gem::Version
83
104
  version: '0'
84
105
  requirements: []
85
106
  rubyforge_project:
86
- rubygems_version: 1.8.11
107
+ rubygems_version: 2.0.3
87
108
  signing_key:
88
- specification_version: 3
109
+ specification_version: 4
89
110
  summary: RSpec On Tap-Y/J
90
111
  test_files: []
112
+ has_rdoc:
data/.ruby DELETED
@@ -1,38 +0,0 @@
1
- ---
2
- source:
3
- - var
4
- authors:
5
- - name: Trans
6
- email: transfire@gmail.com
7
- copyrights:
8
- - holder: Rubyworks
9
- year: '2011'
10
- license: BSD-2-Clause
11
- replacements: []
12
- alternatives: []
13
- requirements:
14
- - name: rspec
15
- - name: tapout
16
- - name: detroit
17
- groups:
18
- - build
19
- development: true
20
- dependencies: []
21
- conflicts: []
22
- repositories: []
23
- resources:
24
- home: http://rubyworks.github.com/rspec-ontap
25
- code: http://github.com/rubyworks/rspec-ontap
26
- mail: http://google.groups.com/groups/rubyworks-mailinglist
27
- extra: {}
28
- load_path:
29
- - lib
30
- revision: 0
31
- created: '2011-12-13'
32
- summary: RSpec On Tap-Y/J
33
- title: RSpec-On-Tap
34
- version: 0.2.0
35
- name: rspec-ontap
36
- description: RSpec-On-Tap is a TAP-Y/J formatter for RSpec.
37
- organization: Rubyworks
38
- date: '2012-02-01'
@@ -1,32 +0,0 @@
1
- = COPYRIGHT NOTICES
2
-
3
- == RSpecOnTap
4
-
5
- Copyright:: (c) 2008 Rubyworks
6
- License:: BSD-2-Clause
7
- Website:: http://rubyworks.github.com/rspec-ontap
8
-
9
- Copyright 2008 Rubyworks. All rights reserved.
10
-
11
- Redistribution and use in source and binary forms, with or without
12
- modification, are permitted provided that the following conditions are met:
13
-
14
- 1. Redistributions of source code must retain the above copyright notice,
15
- this list of conditions and the following disclaimer.
16
-
17
- 2. Redistributions in binary form must reproduce the above copyright
18
- notice, this list of conditions and the following disclaimer in the
19
- documentation and/or other materials provided with the distribution.
20
-
21
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
22
- INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
23
- AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
24
- COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
25
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
26
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
28
- OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29
- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30
- EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
-
32
-