draper 0.4.2 → 0.5.0

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.
data/.gitignore CHANGED
@@ -2,3 +2,5 @@
2
2
  .bundle
3
3
  Gemfile.lock
4
4
  pkg/*
5
+ coverage.data
6
+ coverage/*
data/Rakefile CHANGED
@@ -1 +1,19 @@
1
1
  require 'bundler/gem_tasks'
2
+
3
+ namespace :cover_me do
4
+
5
+ desc "Generates and opens code coverage report."
6
+ task :report do
7
+ require 'cover_me'
8
+ CoverMe.complete!
9
+ end
10
+
11
+ end
12
+
13
+ task :test do
14
+ Rake::Task['cover_me:report'].invoke
15
+ end
16
+
17
+ task :spec do
18
+ Rake::Task['cover_me:report'].invoke
19
+ end
data/draper.gemspec CHANGED
@@ -26,4 +26,5 @@ Gem::Specification.new do |s|
26
26
  s.add_development_dependency "guard"
27
27
  s.add_development_dependency "guard-rspec"
28
28
  s.add_development_dependency "rb-fsevent"
29
+ s.add_development_dependency 'cover_me', '>= 1.0.0.rc6'
29
30
  end
data/lib/draper/base.rb CHANGED
@@ -43,9 +43,13 @@ module Draper
43
43
  @helpers ||= ApplicationController::all_helpers
44
44
  end
45
45
  alias :h :helpers
46
+
47
+ def self.lazy_helpers
48
+ self.send(:include, Draper::LazyHelpers)
49
+ end
46
50
 
47
51
  def self.model_name
48
- ActiveModel::Name.new(source_class)
52
+ ActiveModel::Name.new(model_class)
49
53
  end
50
54
 
51
55
  def to_model
@@ -1,3 +1,3 @@
1
1
  module Draper
2
- VERSION = "0.4.2"
2
+ VERSION = "0.5.0"
3
3
  end
data/spec/base_spec.rb CHANGED
@@ -5,6 +5,19 @@ describe Draper::Base do
5
5
  subject{ Draper::Base.new(source) }
6
6
  let(:source){ Product.new }
7
7
 
8
+ context(".lazy_helpers") do
9
+ it "makes Rails helpers available without using the h. proxy" do
10
+ Draper::Base.lazy_helpers
11
+ subject.send(:pluralize, 5, "cat").should == "5 cats"
12
+ end
13
+ end
14
+
15
+ context(".model_name") do
16
+ it "should return an ActiveModel::Name instance" do
17
+ Draper::Base.model_name.should be_instance_of(ActiveModel::Name)
18
+ end
19
+ end
20
+
8
21
  context(".decorates") do
9
22
  it "sets the model class for the decorator" do
10
23
  ProductDecorator.new(source).model_class == Product
data/spec/spec_helper.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'rubygems'
2
2
  require 'bundler'
3
+ require 'cover_me'
3
4
  require './spec/samples/application_helper.rb'
4
5
  Bundler.require
5
6
  Dir.glob('./spec/samples/*') {|file| require file}
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: draper
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.4.2
5
+ version: 0.5.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Jeff Casimir
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-07-26 00:00:00 -05:00
13
+ date: 2011-07-27 00:00:00 -05:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -101,6 +101,17 @@ dependencies:
101
101
  version: "0"
102
102
  type: :development
103
103
  version_requirements: *id008
104
+ - !ruby/object:Gem::Dependency
105
+ name: cover_me
106
+ prerelease: false
107
+ requirement: &id009 !ruby/object:Gem::Requirement
108
+ none: false
109
+ requirements:
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: 1.0.0.rc6
113
+ type: :development
114
+ version_requirements: *id009
104
115
  description: Draper reimagines the role of helpers in the view layer of a Rails application, allowing an object-oriented approach rather than procedural.
105
116
  email:
106
117
  - jeff@casimircreative.com