rspec-ontap 0.2.0 → 0.3.0

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 (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
-