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.
@@ -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
@@ -3,7 +3,6 @@
3
3
  .bundle
4
4
  .config
5
5
  .yardoc
6
- Gemfile.lock
7
6
  InstalledFiles
8
7
  _yardoc
9
8
  coverage
@@ -2,6 +2,7 @@ language: ruby
2
2
  rvm:
3
3
  - 1.9.2
4
4
  - 1.9.3
5
+ - 2.0.0
5
6
  notifications:
6
7
  email:
7
8
  recipients:
data/Gemfile CHANGED
@@ -2,3 +2,5 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in decent_decorate.gemspec
4
4
  gemspec
5
+
6
+ gem 'coveralls', require: false
@@ -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
  [![Build Status](https://secure.travis-ci.org/netguru/decent_decoration.png?branch=master)](http://travis-ci.org/netguru/decent_decoration)
3
+ [![Code Climate](https://codeclimate.com/github/netguru/decent_decoration.png)](https://codeclimate.com/github/netguru/decent_decoration)
4
+ [![Coverage Status](https://coveralls.io/repos/netguru/decent_decoration/badge.png?branch=master)](https://coveralls.io/r/netguru/decent_decoration)
5
+ [![Gem Version](https://badge.fury.io/rb/decent_decoration.png)](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
@@ -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.7'
21
- gem.add_development_dependency 'rspec-rails', '~> 2.7'
22
- gem.add_development_dependency 'actionpack', '~> 3.1'
23
- gem.add_development_dependency 'activesupport', '~> 3.1'
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
@@ -2,5 +2,5 @@ require "decent_decoration/decorate"
2
2
  require "decent_decoration/version"
3
3
 
4
4
  ActiveSupport.on_load(:action_controller) do
5
- extend DecentDecoration::Decorate
5
+ extend DecentDecoration::ControllerMethods
6
6
  end
@@ -1,21 +1,81 @@
1
1
  module DecentDecoration
2
- module Decorate
3
- def expose_decorated(name, options = {}, &block)
4
- options[:model] ||= name
5
- original_name = name.to_s
6
- plural_name = original_name.pluralize
7
- singular_name = original_name.singularize
8
- decorator_class = options.delete(:decorator) || "#{options[:model].to_s.classify}Decorator".constantize
9
-
10
- if plural_name == original_name && plural_name != singular_name && decorator_class.respond_to?(:decorate_collection)
11
- decorate_method = :decorate_collection
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
- decorate_method = decorator_class.respond_to?(:decorate) ? :decorate : :new
31
+ :new
14
32
  end
33
+ end
15
34
 
16
- undecorated_name = "undecorated_#{name}".to_sym
17
- expose(undecorated_name, options, &block)
18
- expose(name) { decorator_class.public_send(decorate_method, public_send(undecorated_name)) }
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
@@ -1,3 +1,3 @@
1
1
  module DecentDecoration
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  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
- it "should be a decorator" do
6
+ before do
6
7
  get '/attendee/dave'
7
- controller.attendee.should be_instance_of(AttendeeDecorator)
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
- get '/attendee/dave'
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
- it "should be a decorator" do
5
+ before do
6
6
  get '/conference/RuPy'
7
- controller.conference.should be_instance_of(ConferenceDecorator)
8
7
  end
9
8
 
10
- it "should have decorated conference" do
11
- get '/conference/RuPy'
12
- controller.conference.decorated_object.should be_instance_of(Conference)
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
- it "should be specified decorator" do
16
- get '/conference/RuPy'
17
- controller.other_conference.should be_instance_of(CoolConferenceDecorator)
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
@@ -0,0 +1,5 @@
1
+ require 'active_support/all'
2
+ require 'decent_decoration'
3
+ require 'coveralls'
4
+
5
+ Coveralls.wear!
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.3
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-02-08 00:00:00.000000000 Z
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.7'
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.7'
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.7'
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.7'
54
+ version: '2.13'
62
55
  - !ruby/object:Gem::Dependency
63
- name: actionpack
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.1'
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.1'
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.1'
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.1'
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: 1.8.23
142
+ rubygems_version: 2.0.0
154
143
  signing_key:
155
- specification_version: 3
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