decent_decoration 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -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