basic_presenter 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 460f4a35101629fd51ab44082d9957f8e907d5dd6473e4a7b70c7bcd76f0e79a
4
+ data.tar.gz: 5a0d3ab87cc23d54d0420be7059d72058cca4f4eda72a600224df566104e8829
5
+ SHA512:
6
+ metadata.gz: c3003bbc5a004c0bd4f3d8e26a6d322d52539d415bfe9edda2515acfb20138612e0785b1c8512f86850bbd2dd88ae8f4bcfc3dcb6a00132995caf2d6f3050b01
7
+ data.tar.gz: f442970cc5c675296aff7da916f1f5d30cbf8933660e6b2a658797cd46a2133005dd5f7435bfdb07b9391590e35552ef3bfb51e5fe741391a0fce249fd797a67
data/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  [![Code Climate](https://codeclimate.com/github/vinsol/basic_presenter.png)](https://codeclimate.com/github/vinsol/basic_presenter)
2
-
2
+ [![Gem Version](https://badge.fury.io/rb/basic_presenter.png)](http://badge.fury.io/rb/basic_presenter)
3
3
  # BasicPresenter
4
4
  #
5
5
 
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "basic_presenter"
3
- s.version = '0.0.2'
3
+ s.version = '0.0.3'
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.authors = ["Pikender Sharma", "Hemant Khemani", "Akhil Bansal"]
6
6
  s.email = "info@vinsol.com"
@@ -1,15 +1,11 @@
1
1
  module BasicPresenter
2
2
  module Generators
3
3
  class InstallGenerator < Rails::Generators::Base
4
- def create_presenters_dir
5
- empty_directory('app/presenters')
6
- end
7
-
8
4
  def create_presenter_file
9
- create_file "app/presenters/application_presenter.rb", <<-FILE
10
- class ApplicationPresenter < BasicPresenter::BasePresenter
11
- ## Shared Methods might come here
12
- end
5
+ create_file "app/presenters/application_presenter.rb", <<~FILE
6
+ class ApplicationPresenter < BasicPresenter::BasePresenter
7
+ ## Shared Methods might come here
8
+ end
13
9
  FILE
14
10
  end
15
11
  end
@@ -14,7 +14,7 @@ end
14
14
 
15
15
  #class BasePresenter
16
16
  # # extend Forwardable
17
- # # Presenter Class should allow DomainClass instance
17
+ # # Presenter Class should allow DomainClass instance
18
18
  # # to be initialized
19
19
  #
20
20
  # attr_reader :domain_object
@@ -59,72 +59,72 @@ module BasicPresenter
59
59
 
60
60
  context "Presenter Class Modification Interface" do
61
61
  it "should determine default presenter class by the Domain Class" do
62
- dummy_domain_object.default_presenter.should eq(DomainClassPresenter)
62
+ expect(dummy_domain_object.default_presenter).to eq(DomainClassPresenter)
63
63
  end
64
64
 
65
65
  it "should tell current presenter class" do
66
- dummy_domain_object.presenter_class.should eq(DomainClassPresenter)
66
+ expect(dummy_domain_object.presenter_class).to eq(DomainClassPresenter)
67
67
  end
68
68
 
69
69
  it "should assume default presenter class as presenter class when not set" do
70
- dummy_domain_object.presenter_class.should eq(DomainClassPresenter)
70
+ expect(dummy_domain_object.presenter_class).to eq(DomainClassPresenter)
71
71
  end
72
72
 
73
73
  it "should recognize presenter class when set" do
74
- dummy_domain_object.presenter_class.should eq(DomainClassPresenter)
74
+ expect(dummy_domain_object.presenter_class).to eq(DomainClassPresenter)
75
75
  dummy_domain_object.presenter_class = AnotherPresenter
76
- dummy_domain_object.presenter_class.should eq(AnotherPresenter)
76
+ expect(dummy_domain_object.presenter_class).to eq(AnotherPresenter)
77
77
  end
78
78
  end
79
79
 
80
80
  context "Helper Methods" do
81
81
  it "should be able to inform change in Presenter Class" do
82
- dummy_domain_object.presenter_class.should eq(DomainClassPresenter)
83
- dummy_domain_object.should be_presenter_class_not_changed
82
+ expect(dummy_domain_object.presenter_class).to eq(DomainClassPresenter)
83
+ expect(dummy_domain_object).to be_presenter_class_not_changed
84
84
  dummy_domain_object.presenter_class = AnotherPresenter
85
- dummy_domain_object.should be_presenter_class_changed
86
- dummy_domain_object.presenter_class.should eq(AnotherPresenter)
85
+ expect(dummy_domain_object).to be_presenter_class_changed
86
+ expect(dummy_domain_object.presenter_class).to eq(AnotherPresenter)
87
87
  end
88
88
  end
89
89
 
90
90
  context "Presenter Instance Creation to allow delegation of Presenter Methods" do
91
91
  it "should delegate presenter methods on Default Presenter when not set" do
92
- dummy_domain_object.presenter.should be_an_instance_of(DomainClassPresenter)
92
+ expect(dummy_domain_object.presenter).to be_an_instance_of(DomainClassPresenter)
93
93
  end
94
94
 
95
95
  it "should delegate presenter methods on Explicit Presenter if set" do
96
96
  dummy_domain_object.presenter_class = AnotherPresenter
97
- dummy_domain_object.presenter.should be_an_instance_of(AnotherPresenter)
97
+ expect(dummy_domain_object.presenter).to be_an_instance_of(AnotherPresenter)
98
98
  end
99
99
 
100
100
  context "Create Presenter Instance Once and return same if Presenter Class not changed" do
101
101
  it "when no Presenter Class set" do
102
102
  dummy_domain_object_presenter = dummy_domain_object.presenter
103
- dummy_domain_object.presenter.should eq(dummy_domain_object_presenter)
104
- dummy_domain_object.presenter.should eq(dummy_domain_object_presenter)
105
- dummy_domain_object.presenter.should eq(dummy_domain_object_presenter)
103
+ expect(dummy_domain_object.presenter).to eq(dummy_domain_object_presenter)
104
+ expect(dummy_domain_object.presenter).to eq(dummy_domain_object_presenter)
105
+ expect(dummy_domain_object.presenter).to eq(dummy_domain_object_presenter)
106
106
  end
107
107
 
108
108
  it "when Presenter Class changed" do
109
109
  dummy_domain_object_presenter = dummy_domain_object.presenter
110
110
  dummy_domain_object.presenter_class = AnotherPresenter
111
111
  new_dummy_domain_object_presenter = dummy_domain_object.presenter
112
- dummy_domain_object_presenter.should be_an_instance_of(DomainClassPresenter)
113
- new_dummy_domain_object_presenter.should be_an_instance_of(AnotherPresenter)
114
- dummy_domain_object.presenter.should eq(new_dummy_domain_object_presenter)
115
- dummy_domain_object.presenter.should eq(new_dummy_domain_object_presenter)
116
- dummy_domain_object.presenter.should eq(new_dummy_domain_object_presenter)
112
+ expect(dummy_domain_object_presenter).to be_an_instance_of(DomainClassPresenter)
113
+ expect(new_dummy_domain_object_presenter).to be_an_instance_of(AnotherPresenter)
114
+ expect(dummy_domain_object.presenter).to eq(new_dummy_domain_object_presenter)
115
+ expect(dummy_domain_object.presenter).to eq(new_dummy_domain_object_presenter)
116
+ expect(dummy_domain_object.presenter).to eq(new_dummy_domain_object_presenter)
117
117
  end
118
118
  end
119
119
  end
120
120
 
121
121
  describe "Presenter Methods Available on Domain Object through #presenter" do
122
122
  it "should allow presenter methods to be called through #presenter" do
123
- dummy_domain_object.presenter.full_name.should eq('WelcomePresenter')
123
+ expect(dummy_domain_object.presenter.full_name).to eq('WelcomePresenter')
124
124
  end
125
125
 
126
126
  it "should allow domain_object to be accessed through #domain_object" do
127
- dummy_domain_object.presenter.domain_object.should eq(dummy_domain_object)
127
+ expect(dummy_domain_object.presenter.domain_object).to eq(dummy_domain_object)
128
128
  end
129
129
  end
130
130
  end
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: basic_presenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
5
- prerelease:
4
+ version: 0.0.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Pikender Sharma
@@ -11,22 +10,20 @@ authors:
11
10
  autorequire:
12
11
  bindir: bin
13
12
  cert_chain: []
14
- date: 2014-03-27 00:00:00.000000000 Z
13
+ date: 2018-03-19 00:00:00.000000000 Z
15
14
  dependencies:
16
15
  - !ruby/object:Gem::Dependency
17
16
  name: activesupport
18
17
  requirement: !ruby/object:Gem::Requirement
19
- none: false
20
18
  requirements:
21
- - - ! '>='
19
+ - - ">="
22
20
  - !ruby/object:Gem::Version
23
21
  version: '3.0'
24
22
  type: :runtime
25
23
  prerelease: false
26
24
  version_requirements: !ruby/object:Gem::Requirement
27
- none: false
28
25
  requirements:
29
- - - ! '>='
26
+ - - ">="
30
27
  - !ruby/object:Gem::Version
31
28
  version: '3.0'
32
29
  description: A simplified way to glue presenter methods to its domain object
@@ -35,8 +32,8 @@ executables: []
35
32
  extensions: []
36
33
  extra_rdoc_files: []
37
34
  files:
38
- - .gitignore
39
- - .rspec
35
+ - ".gitignore"
36
+ - ".rspec"
40
37
  - Gemfile
41
38
  - LICENSE
42
39
  - README.md
@@ -52,27 +49,26 @@ files:
52
49
  homepage: http://vinsol.com
53
50
  licenses:
54
51
  - MIT
52
+ metadata: {}
55
53
  post_install_message:
56
54
  rdoc_options:
57
- - --charset=UTF-8
55
+ - "--charset=UTF-8"
58
56
  require_paths:
59
57
  - lib
60
58
  required_ruby_version: !ruby/object:Gem::Requirement
61
- none: false
62
59
  requirements:
63
- - - ! '>='
60
+ - - ">="
64
61
  - !ruby/object:Gem::Version
65
62
  version: '0'
66
63
  required_rubygems_version: !ruby/object:Gem::Requirement
67
- none: false
68
64
  requirements:
69
- - - ! '>='
65
+ - - ">="
70
66
  - !ruby/object:Gem::Version
71
67
  version: '0'
72
68
  requirements: []
73
69
  rubyforge_project:
74
- rubygems_version: 1.8.25
70
+ rubygems_version: 2.7.3
75
71
  signing_key:
76
- specification_version: 3
72
+ specification_version: 4
77
73
  summary: Introduce presenters to your rails app
78
74
  test_files: []