decent_presenter 0.0.1 → 0.0.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2f4b4c60cb311d3ae506f7c3ec534f0bda34f14e
4
- data.tar.gz: 52a644f96700701a4da551807d9a53a480f305d7
3
+ metadata.gz: afdd3e9b25a972dc5e4ae524a6b5ed8c06d90ce2
4
+ data.tar.gz: b22771f6d276a601ee1705b0bcbeea877f0ce11c
5
5
  SHA512:
6
- metadata.gz: a316414aff8b7247196552955ca115f47c9e2316f24daf8dd594257f7b0050ec7049640289a84fb5363b970286101e431dd0fb7e7c74c22db44f6df1853f7d46
7
- data.tar.gz: 5cc0b55fc35ba29c714a238d87049be30f58cf5eb0d7e33aea8a56f08e7f3bf8f09274f27caef8f1196ef0cc5cfe7e88b54e9d4c69bc25f9851d5abd348ef0ff
6
+ metadata.gz: 84fff03696ca6770d0d2a4168bf38c5dffddcfc16d1a5c5f47e59c2b129bb5f06cea848a735e84a13cc337f00029ed8c7820042c22d24135c4d36cefcc8e6bc3
7
+ data.tar.gz: 4a8cf1ff77b080d1be295fe697d751884e7b1531176a463c934ee4d0265bf2dbf2e8f140b58a7a6fcab05b932a2db44a168280ea5cdc0c5cec8e710413d3549c
data/Changelog.md ADDED
@@ -0,0 +1,4 @@
1
+ ### 0.0.2
2
+
3
+ * bugfix
4
+ * DecentPresenter::Exposable check also for private method view_context (caused error when decorating other objects within presenters)
data/README.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  Simple and easy to use presentation layer for your Rails models.
4
4
 
5
+ [![Build Status](https://travis-ci.org/Azdaroth/decent_presenter.svg?branch=master)](https://travis-ci.org/Azdaroth/decent_presenter)
6
+
7
+ [![Gem Version](https://badge.fury.io/rb/decent_presenter.svg)](http://badge.fury.io/rb/decent_presenter)
8
+
9
+ [![Coverage Status](https://coveralls.io/repos/Azdaroth/decent_presenter/badge.png?branch=master)](https://coveralls.io/r/Azdaroth/decent_presenter?branch=master)
10
+
11
+
12
+
5
13
  ## Installation
6
14
 
7
15
  Add this line to your application's Gemfile:
@@ -32,13 +40,13 @@ and you can start using DecentPresenters!
32
40
 
33
41
  To decorate your model (e.g. user) just use:
34
42
 
35
- `` ruby
43
+ ``` ruby
36
44
  @user = present(User.find(params[:id]))
37
45
  ```
38
46
 
39
47
  Works the same way with collections:
40
48
 
41
- `` ruby
49
+ ``` ruby
42
50
  @users = present(User.all)
43
51
  ```
44
52
 
@@ -52,13 +60,13 @@ end
52
60
 
53
61
  If you want other presenter, use with option:
54
62
 
55
- `` ruby
63
+ ``` ruby
56
64
  @user = present(User.find(params[:id]), with: OtherUserPresenter)
57
65
  ```
58
66
 
59
67
  or
60
68
 
61
- `` ruby
69
+ ``` ruby
62
70
  @users = present(User.all, with: OtherUserPresenter)
63
71
  ```
64
72
 
@@ -18,9 +18,9 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_development_dependency "bundler", "~> 1.6"
21
+ spec.add_development_dependency "bundler", "~> 1.5"
22
22
  spec.add_development_dependency "rake"
23
- spec.add_development_dependency "rspec"
23
+ spec.add_development_dependency "rspec", "~> 2.14"
24
24
  spec.add_development_dependency "guard"
25
25
  spec.add_development_dependency "guard-rspec"
26
26
  spec.add_development_dependency "coveralls"
@@ -7,11 +7,11 @@ module DecentPresenter
7
7
 
8
8
  attr_reader :view_context
9
9
  private :view_context
10
-
10
+
11
11
  def initialize(object, view_context)
12
12
  super(object)
13
13
  @view_context = view_context
14
- end
14
+ end
15
15
 
16
16
  def model
17
17
  __getobj__
@@ -25,5 +25,6 @@ module DecentPresenter
25
25
 
26
26
  alias :h :helpers
27
27
 
28
+
28
29
  end
29
30
  end
@@ -4,7 +4,7 @@ module DecentPresenter
4
4
  module Exposable
5
5
 
6
6
  def present(presentable, options = {})
7
- if respond_to? :view_context
7
+ if respond_to? :view_context, true
8
8
  DecentPresenter::Exposure.new(
9
9
  view_context, DecentPresenter::Factory
10
10
  ).present(presentable, options)
@@ -1,3 +1,3 @@
1
1
  module DecentPresenter
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -22,6 +22,10 @@ class DummyModelForExposableOtherPresenter < DecentPresenter::Base
22
22
  "other presented name"
23
23
  end
24
24
 
25
+ def name_from_default_presenter
26
+ present(model).name
27
+ end
28
+
25
29
  end
26
30
 
27
31
  class DummyObjectErrorPresenterExposable
@@ -49,7 +53,6 @@ class DummyObjectPresenterExposable
49
53
  present(model, options)
50
54
  end
51
55
 
52
-
53
56
  def present_collection(collection)
54
57
  present(collection)
55
58
  end
@@ -116,6 +119,15 @@ describe DecentPresenter::Exposable do
116
119
  ).to eq "other presented name"
117
120
  end
118
121
 
122
+ it "handles presentation within presenters" do
123
+ expect(subject.present_model_with_options(
124
+ model,
125
+ with: DummyModelForExposableOtherPresenter
126
+ ).name_from_default_presenter
127
+ ).to eq "presented name"
128
+ end
129
+
119
130
  end
120
131
 
132
+
121
133
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decent_presenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Karol Galanciak
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-04-26 00:00:00.000000000 Z
11
+ date: 2014-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '1.6'
19
+ version: '1.5'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '1.6'
26
+ version: '1.5'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '2.14'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '2.14'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: guard
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -119,6 +119,7 @@ files:
119
119
  - ".gitignore"
120
120
  - ".rspec"
121
121
  - ".travis.yml"
122
+ - Changelog.md
122
123
  - Gemfile
123
124
  - Guardfile
124
125
  - LICENSE.txt