delegate_matcher 0.1 → 0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +17 -1
- data/README.md +16 -7
- data/delegate_matcher.gemspec +14 -12
- data/lib/delegate_matcher/block.rb +13 -0
- data/lib/delegate_matcher/delegate.rb +3 -1
- data/lib/delegate_matcher/delegate_matcher.rb +2 -3
- data/lib/delegate_matcher/delegation.rb +10 -3
- data/lib/delegate_matcher/dispatcher.rb +1 -1
- data/lib/delegate_matcher/expected.rb +7 -3
- data/lib/delegate_matcher/stub_delegate.rb +2 -0
- data/lib/delegate_matcher/version.rb +1 -1
- data/lib/delegate_matcher.rb +1 -0
- data/spec/lib/class_method_spec.rb +84 -0
- data/spec/lib/{delegate_to_class_variable_spec.rb → class_variable_spec.rb} +1 -1
- data/spec/lib/{delegate_to_constant_spec.rb → constant_spec.rb} +1 -1
- data/spec/lib/{delegate_to_method_spec.rb → instance_method_spec.rb} +1 -1
- data/spec/lib/{delegate_to_instance_variable_spec.rb → instance_variable_spec.rb} +17 -1
- data/spec/lib/shared/block.rb +27 -1
- metadata +30 -13
- /data/spec/lib/{delegate_to_object_spec.rb → object_spec.rb} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d9489b0d0927d6b2af4766edaf7edc2d4788867e
|
4
|
+
data.tar.gz: d27938e9a9fe51eeb68dbfccdc807caf07883d0a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ea5fb6b338a5f50a1ef0b1f07d5b3c3d54e54a054b406c6cd7536213509cf04e2a1925da61707311e55a8016405150e5f32c27dedcca19d1ae75021daef464e9
|
7
|
+
data.tar.gz: 9ebfe282eb0fd612c71cf5ba18618c6ff51a5025f7ecac20795a788d8de5c5acef7b3a9fcfc88ab174050964ccf945703159a20ab8f0068bf8b1b7c290724409
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,8 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
delegate_matcher (0.
|
4
|
+
delegate_matcher (0.2)
|
5
|
+
proc_extensions (~> 0.1)
|
5
6
|
|
6
7
|
GEM
|
7
8
|
remote: https://rubygems.org/
|
@@ -29,6 +30,8 @@ GEM
|
|
29
30
|
domain_name (0.5.25)
|
30
31
|
unf (>= 0.0.5, < 1.0.0)
|
31
32
|
ffi (1.9.10)
|
33
|
+
file-tail (1.1.0)
|
34
|
+
tins (~> 1.0)
|
32
35
|
formatador (0.2.5)
|
33
36
|
guard (2.13.0)
|
34
37
|
formatador (>= 0.2.4)
|
@@ -63,6 +66,8 @@ GEM
|
|
63
66
|
parser (2.2.3.0)
|
64
67
|
ast (>= 1.1, < 3.0)
|
65
68
|
powerpack (0.1.1)
|
69
|
+
proc_extensions (0.1.2)
|
70
|
+
sourcify (~> 0.5)
|
66
71
|
pry (0.10.3)
|
67
72
|
coderay (~> 1.1.0)
|
68
73
|
method_source (~> 0.8.1)
|
@@ -103,6 +108,12 @@ GEM
|
|
103
108
|
ruby-progressbar (~> 1.7)
|
104
109
|
tins (<= 1.6.0)
|
105
110
|
ruby-progressbar (1.7.5)
|
111
|
+
ruby2ruby (2.2.0)
|
112
|
+
ruby_parser (~> 3.1)
|
113
|
+
sexp_processor (~> 4.0)
|
114
|
+
ruby_parser (3.7.2)
|
115
|
+
sexp_processor (~> 4.1)
|
116
|
+
sexp_processor (4.6.0)
|
106
117
|
shellany (0.0.1)
|
107
118
|
simplecov (0.10.0)
|
108
119
|
docile (~> 1.1.0)
|
@@ -110,6 +121,11 @@ GEM
|
|
110
121
|
simplecov-html (~> 0.10.0)
|
111
122
|
simplecov-html (0.10.0)
|
112
123
|
slop (3.6.0)
|
124
|
+
sourcify (0.5.0)
|
125
|
+
file-tail (>= 1.0.5)
|
126
|
+
ruby2ruby (>= 1.2.5)
|
127
|
+
ruby_parser (>= 2.0.5)
|
128
|
+
sexp_processor (>= 3.0.5)
|
113
129
|
term-ansicolor (1.3.2)
|
114
130
|
tins (~> 1.0)
|
115
131
|
thor (0.19.1)
|
data/README.md
CHANGED
@@ -67,7 +67,7 @@ describe Post do
|
|
67
67
|
end
|
68
68
|
```
|
69
69
|
|
70
|
-
**Note**: if you are delegating to an
|
70
|
+
**Note**: if you are delegating to an object (i.e. `to` is not a string or symbol) then a prefix of `''` will be used :
|
71
71
|
|
72
72
|
```ruby
|
73
73
|
describe Post do
|
@@ -116,16 +116,27 @@ end
|
|
116
116
|
|
117
117
|
### Blocks
|
118
118
|
You can check that a block passed is in turn passed to the delegate via the `with_block` method.
|
119
|
+
By default, block delegation is only checked if `with_a_block` or `without_a_block` is specified.
|
119
120
|
|
120
121
|
```ruby
|
121
122
|
describe Post do
|
122
|
-
it { should delegate(:name).to(author).with_a_block } # name(&block) => author
|
123
|
-
it { should delegate(:name).to(author).with_block } # name(&block) => author
|
123
|
+
it { should delegate(:name).to(author).with_a_block } # name(&block) => author.name(&block)
|
124
|
+
it { should delegate(:name).to(author).with_block } # name(&block) => author.name(&block) # alias for with_a_block
|
124
125
|
|
125
|
-
it { should delegate(:name).to(author).without_a_block } # name(&block) => author
|
126
|
-
it { should delegate(:name).to(author).without_block } # name(&block) => author
|
126
|
+
it { should delegate(:name).to(author).without_a_block } # name(&block) => author.name
|
127
|
+
it { should delegate(:name).to(author).without_block } # name(&block) => author.name # alias for without_a_block
|
127
128
|
end
|
128
129
|
```
|
130
|
+
You can also pass an explicit block in which case the block passed will be compared against
|
131
|
+
the block received by the delegate. The comparison is based on having equivalent source for the blocks.
|
132
|
+
|
133
|
+
```ruby
|
134
|
+
describe Post do
|
135
|
+
it { should delegate(:tainted?).to(authors).as(:all?).with_block { |a| a.tainted? } } # tainted? => authors.all? { |a| a.tainted? }
|
136
|
+
end
|
137
|
+
```
|
138
|
+
|
139
|
+
See [proc_extensions](https://github.com/dwhelan/proc_extensions/) for more details on how the source for procs is compared.
|
129
140
|
|
130
141
|
### Return Value
|
131
142
|
Normally the matcher will check that the value return is the same as the value
|
@@ -137,8 +148,6 @@ describe Post do
|
|
137
148
|
end
|
138
149
|
```
|
139
150
|
|
140
|
-
By default, block delegation is only checked if `with_a_block` or `without_a_block` is specified.
|
141
|
-
|
142
151
|
### Active Support
|
143
152
|
You can test delegation based on the [delegate](http://api.rubyonrails.org/classes/Module.html#method-i-delegate) method in the Active Support gem.
|
144
153
|
|
data/delegate_matcher.gemspec
CHANGED
@@ -19,21 +19,23 @@ Gem::Specification.new do |gem|
|
|
19
19
|
gem.test_files = gem.files.grep(%r{^spec/})
|
20
20
|
gem.require_paths = ['lib']
|
21
21
|
|
22
|
-
gem.
|
23
|
-
|
24
|
-
gem.add_development_dependency '
|
25
|
-
gem.add_development_dependency '
|
26
|
-
gem.add_development_dependency '
|
22
|
+
gem.add_runtime_dependency 'proc_extensions', '~> 0.1'
|
23
|
+
|
24
|
+
gem.add_development_dependency 'activesupport', '~> 4.2'
|
25
|
+
gem.add_development_dependency 'bundler', '~> 1.7'
|
26
|
+
gem.add_development_dependency 'coveralls', '~> 0.7'
|
27
|
+
gem.add_development_dependency 'guard', '~> 2.13'
|
28
|
+
gem.add_development_dependency 'guard-rspec', '~> 4.6'
|
27
29
|
|
28
30
|
if RUBY_VERSION =~ /2/
|
29
|
-
gem.add_development_dependency 'pry-byebug',
|
31
|
+
gem.add_development_dependency 'pry-byebug', '~> 3.3'
|
30
32
|
else
|
31
|
-
gem.add_development_dependency 'pry-debugger',
|
33
|
+
gem.add_development_dependency 'pry-debugger', '~> 0.2'
|
32
34
|
end
|
33
35
|
|
34
|
-
gem.add_development_dependency 'rake',
|
35
|
-
gem.add_development_dependency 'rspec',
|
36
|
-
gem.add_development_dependency 'rspec-its',
|
37
|
-
gem.add_development_dependency 'rubocop',
|
38
|
-
gem.add_development_dependency 'simplecov',
|
36
|
+
gem.add_development_dependency 'rake', '~> 10.0'
|
37
|
+
gem.add_development_dependency 'rspec', '~> 3.0'
|
38
|
+
gem.add_development_dependency 'rspec-its', '~> 1.1'
|
39
|
+
gem.add_development_dependency 'rubocop', '~> 0.30'
|
40
|
+
gem.add_development_dependency 'simplecov', '~> 0.9'
|
39
41
|
end
|
@@ -2,9 +2,11 @@ module RSpec
|
|
2
2
|
module Matchers
|
3
3
|
module DelegateMatcher
|
4
4
|
class Delegate
|
5
|
+
include Block
|
6
|
+
|
5
7
|
RSpec::Mocks::Syntax.enable_expect(self)
|
6
8
|
|
7
|
-
attr_reader :received, :args
|
9
|
+
attr_reader :received, :args
|
8
10
|
|
9
11
|
def initialize(expected)
|
10
12
|
self.expected = expected
|
@@ -24,7 +24,7 @@ module RSpec
|
|
24
24
|
chain(:allow_nil) { |allow_nil = true| expected.allow_nil = allow_nil }
|
25
25
|
chain(:with_prefix) { |prefix = nil| expected.prefix = prefix }
|
26
26
|
chain(:with) { |*args| expected.args = args }
|
27
|
-
chain(:with_a_block) {
|
27
|
+
chain(:with_a_block) { |&block| expected.block = block || true }
|
28
28
|
chain(:without_a_block) { expected.block = false }
|
29
29
|
chain(:without_return) { expected.check_return = false }
|
30
30
|
|
@@ -53,5 +53,4 @@ module RSpec
|
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
56
|
-
# TODO: Handle delegation
|
57
|
-
# TODO: How to handle delegation if delegate_double is called with something else
|
56
|
+
# TODO: Handle nested delegation strings "a.b.c"
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'rspec/matchers'
|
2
|
+
require 'proc_extensions'
|
2
3
|
|
3
4
|
module RSpec
|
4
5
|
module Matchers
|
@@ -40,14 +41,17 @@ module RSpec
|
|
40
41
|
expected.as_args.nil? || delegate.args.eql?(expected.as_args)
|
41
42
|
end
|
42
43
|
|
44
|
+
# rubocop:disable Metrics/AbcSize
|
43
45
|
def block_ok?
|
44
46
|
case
|
45
47
|
when expected.block.nil?
|
46
48
|
true
|
47
|
-
when expected.block
|
49
|
+
when expected.block == false
|
50
|
+
delegate.block.nil?
|
51
|
+
when expected.block == true
|
48
52
|
delegate.block == dispatcher.block
|
49
53
|
else
|
50
|
-
delegate.
|
54
|
+
delegate.block_source == expected.block_source
|
51
55
|
end
|
52
56
|
end
|
53
57
|
|
@@ -56,6 +60,9 @@ module RSpec
|
|
56
60
|
end
|
57
61
|
|
58
62
|
def failure_message(negated)
|
63
|
+
# TODO: Should include the line below
|
64
|
+
# return nil if negated == delegate.received
|
65
|
+
|
59
66
|
message = [
|
60
67
|
argument_failure_message(negated),
|
61
68
|
block_failure_message(negated),
|
@@ -81,7 +88,7 @@ module RSpec
|
|
81
88
|
when negated
|
82
89
|
"a block was #{expected.block ? '' : 'not '}passed"
|
83
90
|
when expected.block
|
84
|
-
delegate.block.nil? ? 'a block was not passed' : "a different block #{delegate.block} was passed"
|
91
|
+
delegate.block.nil? ? 'a block was not passed' : "a different block '#{ProcSource.new(delegate.block)}' was passed"
|
85
92
|
else
|
86
93
|
'a block was passed'
|
87
94
|
end
|
@@ -2,7 +2,9 @@ module RSpec
|
|
2
2
|
module Matchers
|
3
3
|
module DelegateMatcher
|
4
4
|
class Expected
|
5
|
-
|
5
|
+
include Block
|
6
|
+
|
7
|
+
attr_accessor :subject, :to, :method_name, :as, :allow_nil, :check_return
|
6
8
|
attr_reader :args
|
7
9
|
|
8
10
|
def initialize
|
@@ -92,10 +94,12 @@ module RSpec
|
|
92
94
|
case
|
93
95
|
when block.nil?
|
94
96
|
''
|
95
|
-
when block
|
97
|
+
when block == true
|
96
98
|
' with a block'
|
97
|
-
|
99
|
+
when block == false
|
98
100
|
' without a block'
|
101
|
+
else
|
102
|
+
" with block '#{block_source}'"
|
99
103
|
end
|
100
104
|
end
|
101
105
|
|
data/lib/delegate_matcher.rb
CHANGED
@@ -0,0 +1,84 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module RSpec
|
4
|
+
module Matchers
|
5
|
+
module DelegateMatcher
|
6
|
+
module ToMethod
|
7
|
+
describe 'delegation to a method' do
|
8
|
+
class Post
|
9
|
+
def self.author
|
10
|
+
@author ||= Author.new
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
subject { Post }
|
15
|
+
|
16
|
+
let(:receiver) { :author }
|
17
|
+
|
18
|
+
it_behaves_like 'a simple delegator' do
|
19
|
+
before do
|
20
|
+
class Post
|
21
|
+
def self.name
|
22
|
+
author.name
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
include_examples 'a delegator without a nil check'
|
27
|
+
end
|
28
|
+
|
29
|
+
it_behaves_like 'a delegator with a nil check' do
|
30
|
+
before do
|
31
|
+
class Post
|
32
|
+
def self.name
|
33
|
+
author.name if author
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
it_behaves_like 'a delegator with args and a block' do
|
40
|
+
before do
|
41
|
+
class Post
|
42
|
+
def self.name(*args, &block)
|
43
|
+
author.name(*args, &block)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
it_behaves_like 'a delegator with a different method name', :other_name do
|
50
|
+
before do
|
51
|
+
class Post
|
52
|
+
def self.name
|
53
|
+
author.other_name
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
it_behaves_like 'a delegator with a prefix', 'author' do
|
60
|
+
before do
|
61
|
+
class Post
|
62
|
+
def self.author_name
|
63
|
+
author.name
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
it { should delegate(:name).to(:author).with_prefix }
|
68
|
+
end
|
69
|
+
|
70
|
+
it_behaves_like 'a delegator with a different return value', 'Ann Rand' do
|
71
|
+
before do
|
72
|
+
class Post
|
73
|
+
def self.name
|
74
|
+
author.name
|
75
|
+
'Ann Rand'
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
@@ -8,6 +8,11 @@ module RSpec
|
|
8
8
|
class Post
|
9
9
|
def initialize
|
10
10
|
@author = Author.new
|
11
|
+
@authors ||= [@author]
|
12
|
+
end
|
13
|
+
|
14
|
+
def inspect
|
15
|
+
'post'
|
11
16
|
end
|
12
17
|
end
|
13
18
|
|
@@ -37,7 +42,7 @@ module RSpec
|
|
37
42
|
end
|
38
43
|
end
|
39
44
|
|
40
|
-
it_behaves_like 'a delegator with args and a block'
|
45
|
+
it_behaves_like 'a delegator with args and a block' do
|
41
46
|
before do
|
42
47
|
class Post
|
43
48
|
def name(*args, &block)
|
@@ -47,6 +52,17 @@ module RSpec
|
|
47
52
|
end
|
48
53
|
end
|
49
54
|
|
55
|
+
it_behaves_like 'a delegator with its own block' do
|
56
|
+
before do
|
57
|
+
class Post
|
58
|
+
# rubocop:disable Style/SymbolProc
|
59
|
+
def tainted?
|
60
|
+
@authors.all? { |a| a.tainted? }
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
50
66
|
it_behaves_like 'a delegator with a different method name', :other_name do
|
51
67
|
before do
|
52
68
|
class Post
|
data/spec/lib/shared/block.rb
CHANGED
@@ -14,7 +14,7 @@ shared_examples 'a delegator with a block' do
|
|
14
14
|
it { expect(matcher.failure_message_when_negated).to match(/a block was passed/) }
|
15
15
|
end
|
16
16
|
|
17
|
-
context 'without
|
17
|
+
context 'without a block' do
|
18
18
|
let(:matcher) { delegate(:name).to(receiver).without_a_block }
|
19
19
|
it { expect(matcher.description).to eq "delegate name to #{receiver} without a block" }
|
20
20
|
it { expect(matcher.failure_message).to match(/a block was passed/) }
|
@@ -22,6 +22,32 @@ shared_examples 'a delegator with a block' do
|
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
25
|
+
shared_examples 'a delegator with its own block' do
|
26
|
+
# rubocop:disable Style/SymbolProc
|
27
|
+
it { should delegate(:tainted?).to(:@authors).as(:all?).with_block { |a| a.tainted? } }
|
28
|
+
it { should_not delegate(:tainted?).to(:@authors).as(:all?).with_block { |a| a.to_s } }
|
29
|
+
|
30
|
+
describe 'description' do
|
31
|
+
before { matcher.matches? subject }
|
32
|
+
|
33
|
+
context 'with a block' do
|
34
|
+
let(:matcher) { delegate(:tainted?).to(:@authors).as(:all?).with_block { |a| a.tainted? } }
|
35
|
+
it { expect(matcher.description).to eq "delegate tainted? to @authors.all? with block 'proc { |a| a.tainted? }'" }
|
36
|
+
it { expect(matcher.failure_message_when_negated).to match(/a block was passed/) }
|
37
|
+
end
|
38
|
+
|
39
|
+
context 'with a different block' do
|
40
|
+
let(:matcher) { delegate(:tainted?).to(:@authors).as(:all?).with_block { |a| a.to_s } }
|
41
|
+
it { expect(matcher.failure_message).to match(/a different block 'proc { |a| a.tainted? }' was passed/) }
|
42
|
+
end
|
43
|
+
|
44
|
+
context 'without a block' do
|
45
|
+
let(:matcher) { delegate(:tainted?).to(:@authors).as(:all?).without_block }
|
46
|
+
it { expect(matcher.failure_message).to match(/a block was passed/) }
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
25
51
|
shared_examples 'a delegator without a block' do
|
26
52
|
it { should delegate(:name).to(receiver).without_block }
|
27
53
|
it { should delegate(:name).to(receiver).without_a_block }
|
metadata
CHANGED
@@ -1,15 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: delegate_matcher
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.2'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Declan Whelan
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: proc_extensions
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.1'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.1'
|
13
27
|
- !ruby/object:Gem::Dependency
|
14
28
|
name: activesupport
|
15
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -183,6 +197,7 @@ files:
|
|
183
197
|
- Rakefile
|
184
198
|
- delegate_matcher.gemspec
|
185
199
|
- lib/delegate_matcher.rb
|
200
|
+
- lib/delegate_matcher/block.rb
|
186
201
|
- lib/delegate_matcher/delegate.rb
|
187
202
|
- lib/delegate_matcher/delegate_matcher.rb
|
188
203
|
- lib/delegate_matcher/delegation.rb
|
@@ -193,13 +208,14 @@ files:
|
|
193
208
|
- lib/delegate_matcher/version.rb
|
194
209
|
- spec/lib/active_support_delegation_spec.rb
|
195
210
|
- spec/lib/aggregate_delegate_matcher_spec.rb
|
211
|
+
- spec/lib/class_method_spec.rb
|
212
|
+
- spec/lib/class_variable_spec.rb
|
213
|
+
- spec/lib/constant_spec.rb
|
196
214
|
- spec/lib/delegate_spec.rb
|
197
|
-
- spec/lib/delegate_to_class_variable_spec.rb
|
198
|
-
- spec/lib/delegate_to_constant_spec.rb
|
199
|
-
- spec/lib/delegate_to_instance_variable_spec.rb
|
200
|
-
- spec/lib/delegate_to_method_spec.rb
|
201
|
-
- spec/lib/delegate_to_object_spec.rb
|
202
215
|
- spec/lib/forwardable_delegation_spec.rb
|
216
|
+
- spec/lib/instance_method_spec.rb
|
217
|
+
- spec/lib/instance_variable_spec.rb
|
218
|
+
- spec/lib/object_spec.rb
|
203
219
|
- spec/lib/shared/a_simple_delegator.rb
|
204
220
|
- spec/lib/shared/args.rb
|
205
221
|
- spec/lib/shared/args_and_a_block.rb
|
@@ -230,20 +246,21 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
230
246
|
version: '0'
|
231
247
|
requirements: []
|
232
248
|
rubyforge_project:
|
233
|
-
rubygems_version: 2.4.
|
249
|
+
rubygems_version: 2.4.5.1
|
234
250
|
signing_key:
|
235
251
|
specification_version: 4
|
236
252
|
summary: A matcher for testing ruby delegation.
|
237
253
|
test_files:
|
238
254
|
- spec/lib/active_support_delegation_spec.rb
|
239
255
|
- spec/lib/aggregate_delegate_matcher_spec.rb
|
256
|
+
- spec/lib/class_method_spec.rb
|
257
|
+
- spec/lib/class_variable_spec.rb
|
258
|
+
- spec/lib/constant_spec.rb
|
240
259
|
- spec/lib/delegate_spec.rb
|
241
|
-
- spec/lib/delegate_to_class_variable_spec.rb
|
242
|
-
- spec/lib/delegate_to_constant_spec.rb
|
243
|
-
- spec/lib/delegate_to_instance_variable_spec.rb
|
244
|
-
- spec/lib/delegate_to_method_spec.rb
|
245
|
-
- spec/lib/delegate_to_object_spec.rb
|
246
260
|
- spec/lib/forwardable_delegation_spec.rb
|
261
|
+
- spec/lib/instance_method_spec.rb
|
262
|
+
- spec/lib/instance_variable_spec.rb
|
263
|
+
- spec/lib/object_spec.rb
|
247
264
|
- spec/lib/shared/a_simple_delegator.rb
|
248
265
|
- spec/lib/shared/args.rb
|
249
266
|
- spec/lib/shared/args_and_a_block.rb
|
File without changes
|