decent_decoration 0.0.3 → 0.0.4
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.
- checksums.yaml +7 -0
- data/.gitignore +0 -1
- data/.travis.yml +1 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +133 -0
- data/README.md +14 -1
- data/decent_decoration.gemspec +4 -4
- data/lib/decent_decoration.rb +1 -1
- data/lib/decent_decoration/decorate.rb +74 -14
- data/lib/decent_decoration/version.rb +1 -1
- data/spec/decoration_spec.rb +85 -0
- data/spec/integration/draper_spec.rb +7 -4
- data/spec/integration/rails_application_spec.rb +29 -8
- data/spec/spec_helper.rb +5 -0
- metadata +25 -34
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 90d0430f1cee38e0fae31e1b25e47d290afab09c
|
|
4
|
+
data.tar.gz: 113deae413021de7e3dbde8b322907ef309691d7
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 03e355bf3778078a544e5d946d4152a6f4a3596fa6415a70a95342613ff40910bccacee50c4f67ac67b47a01e06cbc340f57f0c969924be8650621a3f91bbdb1
|
|
7
|
+
data.tar.gz: ca9e72308a7692f83a0c55dcfbeaad07659b0bde77e4e1a3e55eff93e63270b2a21c4d16dbc28b3bade7097a2f1b6698797e5f9e692da5208e6d01c3c26895ee
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
decent_decoration (0.0.3)
|
|
5
|
+
decent_exposure (> 0)
|
|
6
|
+
|
|
7
|
+
GEM
|
|
8
|
+
remote: https://rubygems.org/
|
|
9
|
+
specs:
|
|
10
|
+
actionmailer (3.2.13)
|
|
11
|
+
actionpack (= 3.2.13)
|
|
12
|
+
mail (~> 2.5.3)
|
|
13
|
+
actionpack (3.2.13)
|
|
14
|
+
activemodel (= 3.2.13)
|
|
15
|
+
activesupport (= 3.2.13)
|
|
16
|
+
builder (~> 3.0.0)
|
|
17
|
+
erubis (~> 2.7.0)
|
|
18
|
+
journey (~> 1.0.4)
|
|
19
|
+
rack (~> 1.4.5)
|
|
20
|
+
rack-cache (~> 1.2)
|
|
21
|
+
rack-test (~> 0.6.1)
|
|
22
|
+
sprockets (~> 2.2.1)
|
|
23
|
+
activemodel (3.2.13)
|
|
24
|
+
activesupport (= 3.2.13)
|
|
25
|
+
builder (~> 3.0.0)
|
|
26
|
+
activerecord (3.2.13)
|
|
27
|
+
activemodel (= 3.2.13)
|
|
28
|
+
activesupport (= 3.2.13)
|
|
29
|
+
arel (~> 3.0.2)
|
|
30
|
+
tzinfo (~> 0.3.29)
|
|
31
|
+
activeresource (3.2.13)
|
|
32
|
+
activemodel (= 3.2.13)
|
|
33
|
+
activesupport (= 3.2.13)
|
|
34
|
+
activesupport (3.2.13)
|
|
35
|
+
i18n (= 0.6.1)
|
|
36
|
+
multi_json (~> 1.0)
|
|
37
|
+
arel (3.0.2)
|
|
38
|
+
builder (3.0.4)
|
|
39
|
+
colorize (0.5.8)
|
|
40
|
+
coveralls (0.6.7)
|
|
41
|
+
colorize
|
|
42
|
+
multi_json (~> 1.3)
|
|
43
|
+
rest-client
|
|
44
|
+
simplecov (>= 0.7)
|
|
45
|
+
thor
|
|
46
|
+
decent_exposure (2.0.1)
|
|
47
|
+
diff-lcs (1.2.3)
|
|
48
|
+
draper (1.1.0)
|
|
49
|
+
actionpack (>= 3.0)
|
|
50
|
+
activesupport (>= 3.0)
|
|
51
|
+
request_store (~> 1.0.3)
|
|
52
|
+
erubis (2.7.0)
|
|
53
|
+
hike (1.2.2)
|
|
54
|
+
i18n (0.6.1)
|
|
55
|
+
journey (1.0.4)
|
|
56
|
+
json (1.7.7)
|
|
57
|
+
mail (2.5.3)
|
|
58
|
+
i18n (>= 0.4.0)
|
|
59
|
+
mime-types (~> 1.16)
|
|
60
|
+
treetop (~> 1.4.8)
|
|
61
|
+
mime-types (1.23)
|
|
62
|
+
multi_json (1.7.2)
|
|
63
|
+
polyglot (0.3.3)
|
|
64
|
+
rack (1.4.5)
|
|
65
|
+
rack-cache (1.2)
|
|
66
|
+
rack (>= 0.4)
|
|
67
|
+
rack-ssl (1.3.3)
|
|
68
|
+
rack
|
|
69
|
+
rack-test (0.6.2)
|
|
70
|
+
rack (>= 1.0)
|
|
71
|
+
rails (3.2.13)
|
|
72
|
+
actionmailer (= 3.2.13)
|
|
73
|
+
actionpack (= 3.2.13)
|
|
74
|
+
activerecord (= 3.2.13)
|
|
75
|
+
activeresource (= 3.2.13)
|
|
76
|
+
activesupport (= 3.2.13)
|
|
77
|
+
bundler (~> 1.0)
|
|
78
|
+
railties (= 3.2.13)
|
|
79
|
+
railties (3.2.13)
|
|
80
|
+
actionpack (= 3.2.13)
|
|
81
|
+
activesupport (= 3.2.13)
|
|
82
|
+
rack-ssl (~> 1.3.2)
|
|
83
|
+
rake (>= 0.8.7)
|
|
84
|
+
rdoc (~> 3.4)
|
|
85
|
+
thor (>= 0.14.6, < 2.0)
|
|
86
|
+
rake (10.0.4)
|
|
87
|
+
rdoc (3.12.2)
|
|
88
|
+
json (~> 1.4)
|
|
89
|
+
request_store (1.0.5)
|
|
90
|
+
rest-client (1.6.7)
|
|
91
|
+
mime-types (>= 1.16)
|
|
92
|
+
rspec (2.13.0)
|
|
93
|
+
rspec-core (~> 2.13.0)
|
|
94
|
+
rspec-expectations (~> 2.13.0)
|
|
95
|
+
rspec-mocks (~> 2.13.0)
|
|
96
|
+
rspec-core (2.13.1)
|
|
97
|
+
rspec-expectations (2.13.0)
|
|
98
|
+
diff-lcs (>= 1.1.3, < 2.0)
|
|
99
|
+
rspec-mocks (2.13.1)
|
|
100
|
+
rspec-rails (2.13.0)
|
|
101
|
+
actionpack (>= 3.0)
|
|
102
|
+
activesupport (>= 3.0)
|
|
103
|
+
railties (>= 3.0)
|
|
104
|
+
rspec-core (~> 2.13.0)
|
|
105
|
+
rspec-expectations (~> 2.13.0)
|
|
106
|
+
rspec-mocks (~> 2.13.0)
|
|
107
|
+
simplecov (0.7.1)
|
|
108
|
+
multi_json (~> 1.0)
|
|
109
|
+
simplecov-html (~> 0.7.1)
|
|
110
|
+
simplecov-html (0.7.1)
|
|
111
|
+
sprockets (2.2.2)
|
|
112
|
+
hike (~> 1.2)
|
|
113
|
+
multi_json (~> 1.0)
|
|
114
|
+
rack (~> 1.0)
|
|
115
|
+
tilt (~> 1.1, != 1.3.0)
|
|
116
|
+
thor (0.18.1)
|
|
117
|
+
tilt (1.3.7)
|
|
118
|
+
treetop (1.4.12)
|
|
119
|
+
polyglot
|
|
120
|
+
polyglot (>= 0.3.1)
|
|
121
|
+
tzinfo (0.3.37)
|
|
122
|
+
|
|
123
|
+
PLATFORMS
|
|
124
|
+
ruby
|
|
125
|
+
|
|
126
|
+
DEPENDENCIES
|
|
127
|
+
activesupport (~> 3.2)
|
|
128
|
+
coveralls
|
|
129
|
+
decent_decoration!
|
|
130
|
+
draper (>= 1.0.0)
|
|
131
|
+
rails (~> 3.2)
|
|
132
|
+
rspec (~> 2.13)
|
|
133
|
+
rspec-rails (~> 2.13)
|
data/README.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# decent_decoration
|
|
2
2
|
[](http://travis-ci.org/netguru/decent_decoration)
|
|
3
|
+
[](https://codeclimate.com/github/netguru/decent_decoration)
|
|
4
|
+
[](https://coveralls.io/r/netguru/decent_decoration)
|
|
5
|
+
[](http://badge.fury.io/rb/decent_decoration)
|
|
3
6
|
|
|
4
7
|
decent_decoration allows you to use excellent [decent_exposure][decent_exposure] gem with decorators.
|
|
5
8
|
|
|
@@ -36,9 +39,10 @@ end
|
|
|
36
39
|
class ConferencesController < ApplicationController
|
|
37
40
|
expose_decorated(:conference)
|
|
38
41
|
end
|
|
39
|
-
|
|
40
42
|
```
|
|
41
43
|
|
|
44
|
+
decent_decoration makes decorated objects accessible in views. They remain undecorated in your controllers.
|
|
45
|
+
|
|
42
46
|
Define a decorator explicitly:
|
|
43
47
|
|
|
44
48
|
``` ruby
|
|
@@ -48,6 +52,15 @@ class ConferencesController < ApplicationController
|
|
|
48
52
|
end
|
|
49
53
|
```
|
|
50
54
|
|
|
55
|
+
decent_decoration detect automatically if you want to decorate a collection. To circumvent this pass collection: true/false
|
|
56
|
+
|
|
57
|
+
``` ruby
|
|
58
|
+
# app/controllers/conferences_controller.rb
|
|
59
|
+
class ConferencesController < ApplicationController
|
|
60
|
+
expose_decorated(:conferences, collection: false)
|
|
61
|
+
end
|
|
62
|
+
```
|
|
63
|
+
|
|
51
64
|
decent_decoration supports most of the awesome [decent_exposure api][decent_exposure_api]. Read [more about it!][decent_exposure_api]
|
|
52
65
|
|
|
53
66
|
``` ruby
|
data/decent_decoration.gemspec
CHANGED
|
@@ -17,9 +17,9 @@ Gem::Specification.new do |gem|
|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
|
18
18
|
gem.require_paths = ["lib"]
|
|
19
19
|
gem.add_runtime_dependency 'decent_exposure', '> 0'
|
|
20
|
-
gem.add_development_dependency 'rspec', '~> 2.
|
|
21
|
-
gem.add_development_dependency 'rspec-rails', '~> 2.
|
|
22
|
-
gem.add_development_dependency '
|
|
23
|
-
gem.add_development_dependency 'activesupport', '~> 3.
|
|
20
|
+
gem.add_development_dependency 'rspec', '~> 2.13'
|
|
21
|
+
gem.add_development_dependency 'rspec-rails', '~> 2.13'
|
|
22
|
+
gem.add_development_dependency 'rails', '~> 3.2'
|
|
23
|
+
gem.add_development_dependency 'activesupport', '~> 3.2'
|
|
24
24
|
gem.add_development_dependency 'draper', '>= 1.0.0'
|
|
25
25
|
end
|
data/lib/decent_decoration.rb
CHANGED
|
@@ -1,21 +1,81 @@
|
|
|
1
1
|
module DecentDecoration
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
class Decoration
|
|
3
|
+
attr_accessor :name, :original_options
|
|
4
|
+
private :original_options
|
|
5
|
+
|
|
6
|
+
def initialize(name, options = {})
|
|
7
|
+
self.name = name
|
|
8
|
+
self.original_options = options
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def decorated_name
|
|
12
|
+
"decorated_#{name}".to_sym
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
def options
|
|
16
|
+
original_options.except(:decorator, :collection).tap do |h|
|
|
17
|
+
h[:model] ||= name
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
def decorator_class
|
|
22
|
+
original_options.fetch(:decorator) { infer_decorator_class }
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def decorate_method
|
|
26
|
+
if decorate_collection? && decorator_class.respond_to?(:decorate_collection)
|
|
27
|
+
:decorate_collection
|
|
28
|
+
elsif decorator_class.respond_to?(:decorate)
|
|
29
|
+
:decorate
|
|
12
30
|
else
|
|
13
|
-
|
|
31
|
+
:new
|
|
14
32
|
end
|
|
33
|
+
end
|
|
15
34
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
35
|
+
private
|
|
36
|
+
|
|
37
|
+
def infer_decorator_class
|
|
38
|
+
"#{options[:model].to_s.classify}Decorator".constantize
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def decorate_collection?
|
|
42
|
+
(plural_name? && force_collection != false) || force_collection == true
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
def force_collection
|
|
46
|
+
original_options[:collection]
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def plural_name?
|
|
50
|
+
plural_name == name && plural_name != singular_name
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def plural_name
|
|
54
|
+
name.to_s.pluralize.to_sym
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def singular_name
|
|
58
|
+
name.to_s.singularize.to_sym
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
module ControllerMethods
|
|
63
|
+
def expose_decorated(name, options = {}, &block)
|
|
64
|
+
decoration = Decoration.new(name, options)
|
|
65
|
+
|
|
66
|
+
decorator_class = decoration.decorator_class
|
|
67
|
+
decorate_method = decoration.decorate_method
|
|
68
|
+
decorated_name = decoration.decorated_name
|
|
69
|
+
options = decoration.options
|
|
70
|
+
|
|
71
|
+
expose(name, options, &block)
|
|
72
|
+
expose(decorated_name) { decorator_class.public_send(decorate_method, public_send(name)) }
|
|
73
|
+
|
|
74
|
+
helper Module.new do
|
|
75
|
+
define_method(name) do
|
|
76
|
+
public_send(decorated_name)
|
|
77
|
+
end
|
|
78
|
+
end
|
|
19
79
|
end
|
|
20
80
|
end
|
|
21
81
|
end
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe DecentDecoration::Decoration do
|
|
4
|
+
let(:klass) { DecentDecoration::Decoration }
|
|
5
|
+
|
|
6
|
+
it "should be initialized with name" do
|
|
7
|
+
subject = klass.new(:conference)
|
|
8
|
+
subject.name.should == :conference
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
it "should be initialized with options" do
|
|
12
|
+
subject = klass.new(:conference, { model: :conference })
|
|
13
|
+
subject.options.should == { model: :conference }
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
describe "#decorated_name" do
|
|
17
|
+
it "should consist of name prepended by decorated" do
|
|
18
|
+
klass.new(:conference).decorated_name.should == :decorated_conference
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
describe "#decorator_class" do
|
|
23
|
+
it "should infer the class from name" do
|
|
24
|
+
klass.new(:conference).decorator_class.should == ConferenceDecorator
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it "should use :decorator if passed" do
|
|
28
|
+
klass.new(:conference, decorator: AttendeeDecorator).decorator_class.should == AttendeeDecorator
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
describe "#decorate_method" do
|
|
33
|
+
describe "when name is plural" do
|
|
34
|
+
subject { klass.new(:conferences, decorator: decorator) }
|
|
35
|
+
let(:decorator) { stub }
|
|
36
|
+
|
|
37
|
+
it "should be :decorate_collection if decorator supports it" do
|
|
38
|
+
decorator.stub(:decorate_collection)
|
|
39
|
+
subject.decorate_method.should == :decorate_collection
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
it "should be :decorate if decorator does not support :decorate_collection and supports :decorate" do
|
|
43
|
+
decorator.stub(:decorate)
|
|
44
|
+
subject.decorate_method.should == :decorate
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
it "should be :new if decorator does not support :decorate_collection or :decorate" do
|
|
48
|
+
subject.decorate_method.should == :new
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
it "should be :decorate if decorator supports it and collection: false" do
|
|
52
|
+
decorator.stub(:decorate)
|
|
53
|
+
decorator.stub(:decorate_collection)
|
|
54
|
+
subject = klass.new(:conferences, decorator: decorator, collection: false)
|
|
55
|
+
subject.decorate_method.should == :decorate
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
describe "when name is singular" do
|
|
60
|
+
subject { klass.new(:conference, decorator: decorator) }
|
|
61
|
+
let(:decorator) { stub }
|
|
62
|
+
|
|
63
|
+
it "should not be :decorate_collection even if decorator supports it" do
|
|
64
|
+
decorator.stub(:decorate_collection)
|
|
65
|
+
subject.decorate_method.should_not == :decorate_collection
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
it "should be :decorate_collection if decorator supports it and collection: true" do
|
|
69
|
+
decorator.stub(:decorate)
|
|
70
|
+
decorator.stub(:decorate_collection)
|
|
71
|
+
subject = klass.new(:conference, decorator: decorator, collection: true)
|
|
72
|
+
subject.decorate_method.should == :decorate_collection
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
it "should be :decorate if decorator supports it" do
|
|
76
|
+
decorator.stub(:decorate)
|
|
77
|
+
subject.decorate_method.should == :decorate
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
it "should be :new if decorator does not support :decorate" do
|
|
81
|
+
subject.decorate_method.should == :new
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
1
2
|
require 'fixtures/fake_rails_application'
|
|
2
3
|
require 'rspec/rails'
|
|
3
4
|
|
|
4
5
|
describe AttendeesController, type: :controller do
|
|
5
|
-
|
|
6
|
+
before do
|
|
6
7
|
get '/attendee/dave'
|
|
7
|
-
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
it "should be a decorator" do
|
|
11
|
+
controller.view_context.attendee.should be_instance_of(AttendeeDecorator)
|
|
8
12
|
end
|
|
9
13
|
|
|
10
14
|
it "should be a decorator in collection" do
|
|
11
|
-
|
|
12
|
-
controller.attendees.each do |attendee|
|
|
15
|
+
controller.view_context.attendees.each do |attendee|
|
|
13
16
|
attendee.should be_instance_of(AttendeeDecorator)
|
|
14
17
|
end
|
|
15
18
|
end
|
|
@@ -2,18 +2,39 @@ require 'fixtures/fake_rails_application'
|
|
|
2
2
|
require 'rspec/rails'
|
|
3
3
|
|
|
4
4
|
describe ConferencesController, type: :controller do
|
|
5
|
-
|
|
5
|
+
before do
|
|
6
6
|
get '/conference/RuPy'
|
|
7
|
-
controller.conference.should be_instance_of(ConferenceDecorator)
|
|
8
7
|
end
|
|
9
8
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
describe "inside a view" do
|
|
10
|
+
it "should be a decorator" do
|
|
11
|
+
controller.view_context.conference.should be_instance_of(ConferenceDecorator)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
it "should have decorated conference" do
|
|
15
|
+
controller.view_context.conference.decorated_object.should be_instance_of(Conference)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
it "should be specified decorator" do
|
|
19
|
+
controller.view_context.other_conference.should be_instance_of(CoolConferenceDecorator)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
it "should cache decorator" do
|
|
23
|
+
controller.view_context.conference.object_id.should == controller.view_context.conference.object_id
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
it "should cache decorated object" do
|
|
27
|
+
controller.view_context.conference.decorated_object.object_id.should == controller.view_context.conference.decorated_object.object_id
|
|
28
|
+
end
|
|
13
29
|
end
|
|
14
30
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
31
|
+
describe "inside a controller" do
|
|
32
|
+
it "should be undecorated object" do
|
|
33
|
+
controller.conference.should be_instance_of(Conference)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
it "should not be specified decorator" do
|
|
37
|
+
controller.other_conference.should be_instance_of(Conference)
|
|
38
|
+
end
|
|
18
39
|
end
|
|
19
40
|
end
|
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
|
@@ -1,110 +1,97 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: decent_decoration
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
5
|
-
prerelease:
|
|
4
|
+
version: 0.0.4
|
|
6
5
|
platform: ruby
|
|
7
6
|
authors:
|
|
8
7
|
- Tomasz Pewiński
|
|
9
8
|
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date: 2013-
|
|
11
|
+
date: 2013-04-28 00:00:00.000000000 Z
|
|
13
12
|
dependencies:
|
|
14
13
|
- !ruby/object:Gem::Dependency
|
|
15
14
|
name: decent_exposure
|
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
|
17
|
-
none: false
|
|
18
16
|
requirements:
|
|
19
|
-
- -
|
|
17
|
+
- - '>'
|
|
20
18
|
- !ruby/object:Gem::Version
|
|
21
19
|
version: '0'
|
|
22
20
|
type: :runtime
|
|
23
21
|
prerelease: false
|
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
-
none: false
|
|
26
23
|
requirements:
|
|
27
|
-
- -
|
|
24
|
+
- - '>'
|
|
28
25
|
- !ruby/object:Gem::Version
|
|
29
26
|
version: '0'
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
|
31
28
|
name: rspec
|
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
|
33
|
-
none: false
|
|
34
30
|
requirements:
|
|
35
31
|
- - ~>
|
|
36
32
|
- !ruby/object:Gem::Version
|
|
37
|
-
version: '2.
|
|
33
|
+
version: '2.13'
|
|
38
34
|
type: :development
|
|
39
35
|
prerelease: false
|
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
41
|
-
none: false
|
|
42
37
|
requirements:
|
|
43
38
|
- - ~>
|
|
44
39
|
- !ruby/object:Gem::Version
|
|
45
|
-
version: '2.
|
|
40
|
+
version: '2.13'
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
|
47
42
|
name: rspec-rails
|
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
|
49
|
-
none: false
|
|
50
44
|
requirements:
|
|
51
45
|
- - ~>
|
|
52
46
|
- !ruby/object:Gem::Version
|
|
53
|
-
version: '2.
|
|
47
|
+
version: '2.13'
|
|
54
48
|
type: :development
|
|
55
49
|
prerelease: false
|
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
57
|
-
none: false
|
|
58
51
|
requirements:
|
|
59
52
|
- - ~>
|
|
60
53
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '2.
|
|
54
|
+
version: '2.13'
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
|
63
|
-
name:
|
|
56
|
+
name: rails
|
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
|
65
|
-
none: false
|
|
66
58
|
requirements:
|
|
67
59
|
- - ~>
|
|
68
60
|
- !ruby/object:Gem::Version
|
|
69
|
-
version: '3.
|
|
61
|
+
version: '3.2'
|
|
70
62
|
type: :development
|
|
71
63
|
prerelease: false
|
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
73
|
-
none: false
|
|
74
65
|
requirements:
|
|
75
66
|
- - ~>
|
|
76
67
|
- !ruby/object:Gem::Version
|
|
77
|
-
version: '3.
|
|
68
|
+
version: '3.2'
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
|
79
70
|
name: activesupport
|
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
|
81
|
-
none: false
|
|
82
72
|
requirements:
|
|
83
73
|
- - ~>
|
|
84
74
|
- !ruby/object:Gem::Version
|
|
85
|
-
version: '3.
|
|
75
|
+
version: '3.2'
|
|
86
76
|
type: :development
|
|
87
77
|
prerelease: false
|
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
|
89
|
-
none: false
|
|
90
79
|
requirements:
|
|
91
80
|
- - ~>
|
|
92
81
|
- !ruby/object:Gem::Version
|
|
93
|
-
version: '3.
|
|
82
|
+
version: '3.2'
|
|
94
83
|
- !ruby/object:Gem::Dependency
|
|
95
84
|
name: draper
|
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
|
97
|
-
none: false
|
|
98
86
|
requirements:
|
|
99
|
-
- -
|
|
87
|
+
- - '>='
|
|
100
88
|
- !ruby/object:Gem::Version
|
|
101
89
|
version: 1.0.0
|
|
102
90
|
type: :development
|
|
103
91
|
prerelease: false
|
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
|
105
|
-
none: false
|
|
106
93
|
requirements:
|
|
107
|
-
- -
|
|
94
|
+
- - '>='
|
|
108
95
|
- !ruby/object:Gem::Version
|
|
109
96
|
version: 1.0.0
|
|
110
97
|
description: Use decent_exposure with decorators (e.g. Draper)
|
|
@@ -117,6 +104,7 @@ files:
|
|
|
117
104
|
- .gitignore
|
|
118
105
|
- .travis.yml
|
|
119
106
|
- Gemfile
|
|
107
|
+
- Gemfile.lock
|
|
120
108
|
- LICENSE.txt
|
|
121
109
|
- README.md
|
|
122
110
|
- Rakefile
|
|
@@ -124,40 +112,43 @@ files:
|
|
|
124
112
|
- lib/decent_decoration.rb
|
|
125
113
|
- lib/decent_decoration/decorate.rb
|
|
126
114
|
- lib/decent_decoration/version.rb
|
|
115
|
+
- spec/decoration_spec.rb
|
|
127
116
|
- spec/fixtures/controllers.rb
|
|
128
117
|
- spec/fixtures/decorators.rb
|
|
129
118
|
- spec/fixtures/fake_rails_application.rb
|
|
130
119
|
- spec/fixtures/models.rb
|
|
131
120
|
- spec/integration/draper_spec.rb
|
|
132
121
|
- spec/integration/rails_application_spec.rb
|
|
122
|
+
- spec/spec_helper.rb
|
|
133
123
|
homepage: https://github.com/netguru/decent_decoration
|
|
134
124
|
licenses: []
|
|
125
|
+
metadata: {}
|
|
135
126
|
post_install_message:
|
|
136
127
|
rdoc_options: []
|
|
137
128
|
require_paths:
|
|
138
129
|
- lib
|
|
139
130
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
140
|
-
none: false
|
|
141
131
|
requirements:
|
|
142
|
-
- -
|
|
132
|
+
- - '>='
|
|
143
133
|
- !ruby/object:Gem::Version
|
|
144
134
|
version: '0'
|
|
145
135
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
146
|
-
none: false
|
|
147
136
|
requirements:
|
|
148
|
-
- -
|
|
137
|
+
- - '>='
|
|
149
138
|
- !ruby/object:Gem::Version
|
|
150
139
|
version: '0'
|
|
151
140
|
requirements: []
|
|
152
141
|
rubyforge_project:
|
|
153
|
-
rubygems_version:
|
|
142
|
+
rubygems_version: 2.0.0
|
|
154
143
|
signing_key:
|
|
155
|
-
specification_version:
|
|
144
|
+
specification_version: 4
|
|
156
145
|
summary: Use decent_exposure with decorators (e.g. Draper)
|
|
157
146
|
test_files:
|
|
147
|
+
- spec/decoration_spec.rb
|
|
158
148
|
- spec/fixtures/controllers.rb
|
|
159
149
|
- spec/fixtures/decorators.rb
|
|
160
150
|
- spec/fixtures/fake_rails_application.rb
|
|
161
151
|
- spec/fixtures/models.rb
|
|
162
152
|
- spec/integration/draper_spec.rb
|
|
163
153
|
- spec/integration/rails_application_spec.rb
|
|
154
|
+
- spec/spec_helper.rb
|