base_presenter 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.
@@ -6,7 +6,7 @@ require 'base_presenter/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "base_presenter"
8
8
  spec.version = BasePresenter::VERSION
9
- spec.date = '2013-10-08'
9
+ spec.date = '2013-10-09'
10
10
  spec.authors = ["Michał Szyma"]
11
11
  spec.email = ["raglub.ruby@gmail.com"]
12
12
  spec.description = %q{The gem adds "Presenter" functionality into Rails application}
@@ -21,4 +21,7 @@ Gem::Specification.new do |spec|
21
21
 
22
22
  spec.add_development_dependency "bundler", "~> 1.3"
23
23
  spec.add_development_dependency "rake"
24
+ spec.add_development_dependency 'rspec'
25
+ spec.add_development_dependency 'rails', ">= 3.0.0"
26
+
24
27
  end
@@ -1,6 +1,5 @@
1
1
  require "base_presenter/version"
2
2
  require "application_helper"
3
-
4
3
  class BasePresenter
5
4
 
6
5
  def initialize(object, template)
@@ -18,4 +17,11 @@ class BasePresenter
18
17
  @template.send(*args, &block)
19
18
  end
20
19
 
20
+ def handle_none(value)
21
+ if value.present?
22
+ yield
23
+ else
24
+ @template.content_tag :span, "None given", class: "none"
25
+ end
26
+ end
21
27
  end
@@ -1,3 +1,3 @@
1
1
  class BasePresenter
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
@@ -0,0 +1,27 @@
1
+ require 'spec_helper'
2
+
3
+ describe BasePresenter do
4
+ let(:dummy) { Dummy.new }
5
+
6
+ let(:dummy_presenter) do
7
+ DummyHelper.present(dummy)
8
+ end
9
+
10
+ it "should initialize presenter" do
11
+ dummy_presenter
12
+ end
13
+
14
+ it "#presents" do
15
+ dummy_presenter.dummy.should eq dummy
16
+ end
17
+
18
+ it "should show formated name" do
19
+ dummy_presenter.name.should eq("EXAMPLE NAME")
20
+ end
21
+
22
+ it "#handle_none with not blank of value" do
23
+ value = "no empty"
24
+ dummy_presenter.handle_none(value) {value}.should eq(value)
25
+ end
26
+
27
+ end
@@ -0,0 +1,3 @@
1
+ class DummyHelper < ActionController::Base
2
+ extend ApplicationHelper
3
+ end
@@ -0,0 +1,5 @@
1
+ class Dummy
2
+ def name
3
+ "example name"
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ class DummyPresenter < BasePresenter
2
+ presents :dummy
3
+
4
+ def name
5
+ dummy.name.upcase
6
+ end
7
+ end
@@ -0,0 +1,19 @@
1
+ ENV["RAILS_ENV"] ||= 'test'
2
+
3
+ require "rails/all"
4
+ require 'base_presenter'
5
+ # Define the application and configuration
6
+ class Application < ::Rails::Application
7
+ # config.active_support.deprecation = :stderr
8
+ end
9
+ # Initialize the application
10
+ Application.initialize!
11
+
12
+ require_relative "dummy/app/helpers/dummy_helper.rb"
13
+ require_relative "dummy/app/models/dummy.rb"
14
+ require_relative "dummy/app/presenters/dummy_presenter.rb"
15
+
16
+ RSpec.configure do |config|
17
+ config.color_enabled = true
18
+ config.tty = true
19
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: base_presenter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-10-08 00:00:00.000000000 Z
12
+ date: 2013-10-09 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -43,6 +43,38 @@ dependencies:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: rspec
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rails
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: 3.0.0
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: 3.0.0
46
78
  description: The gem adds "Presenter" functionality into Rails application
47
79
  email:
48
80
  - raglub.ruby@gmail.com
@@ -59,6 +91,11 @@ files:
59
91
  - lib/application_helper.rb
60
92
  - lib/base_presenter.rb
61
93
  - lib/base_presenter/version.rb
94
+ - spec/base_presenter_spec.rb
95
+ - spec/dummy/app/helpers/dummy_helper.rb
96
+ - spec/dummy/app/models/dummy.rb
97
+ - spec/dummy/app/presenters/dummy_presenter.rb
98
+ - spec/spec_helper.rb
62
99
  homepage: https://github.com/raglub/base_presenter
63
100
  licenses:
64
101
  - MIT
@@ -84,4 +121,9 @@ rubygems_version: 1.8.25
84
121
  signing_key:
85
122
  specification_version: 3
86
123
  summary: The gem adds "Presenter" functionality into Rails application
87
- test_files: []
124
+ test_files:
125
+ - spec/base_presenter_spec.rb
126
+ - spec/dummy/app/helpers/dummy_helper.rb
127
+ - spec/dummy/app/models/dummy.rb
128
+ - spec/dummy/app/presenters/dummy_presenter.rb
129
+ - spec/spec_helper.rb