basic_assumption 0.2.1 → 0.2.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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1
1
+ 0.2.2
@@ -11,4 +11,9 @@ ActionController::Base.class_eval do
11
11
  hide_action name
12
12
  helper_method name
13
13
  end
14
+
15
+ default_assumption do |name|
16
+ model_class = name.to_s.classify.constantize
17
+ model_class.find(params["#{name}_id"] || params['id'])
18
+ end
14
19
  end
@@ -121,13 +121,15 @@ describe BasicAssumption do
121
121
  end
122
122
 
123
123
  context "classes derived from ActionController::Base" do
124
- before do
125
- ::ActionController::Base.class_eval do
124
+ let(:application_controller) { Class.new(controller_class) }
125
+ let(:derived_class) { Class.new(application_controller) }
126
+ let(:derived_instance) { derived_class.new }
127
+
128
+ before(:all) do
129
+ application_controller.class_eval do
126
130
  default_assumption { |name| "#{name}#{name}" }
127
131
  end
128
132
  end
129
- let(:derived_class) { Class.new(controller_class) }
130
- let(:derived_instance) { derived_class.new }
131
133
 
132
134
  it "inherit the default assumption" do
133
135
  derived_class.class_eval do
@@ -136,5 +138,17 @@ describe BasicAssumption do
136
138
  derived_instance.twice.should eql('twicetwice')
137
139
  end
138
140
  end
141
+
142
+ context "the default assumption" do
143
+ class ::Model; end
144
+ it "attempts to find an instance of a model class inferred from the name" do
145
+ controller_class.class_eval do
146
+ assume(:model)
147
+ end
148
+ controller_instance.stub(:params => {'id' => 123})
149
+ ::Model.should_receive(:find).with(123)
150
+ controller_instance.model.should be_a_kind_of(Object)
151
+ end
152
+ end
139
153
  end
140
154
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 1
9
- version: 0.2.1
8
+ - 2
9
+ version: 0.2.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - Matt Yoho
@@ -31,6 +31,34 @@ dependencies:
31
31
  version: 1.3.0
32
32
  type: :development
33
33
  version_requirements: *id001
34
+ - !ruby/object:Gem::Dependency
35
+ name: actionpack
36
+ prerelease: false
37
+ requirement: &id002 !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ segments:
42
+ - 2
43
+ - 3
44
+ - 5
45
+ version: 2.3.5
46
+ type: :development
47
+ version_requirements: *id002
48
+ - !ruby/object:Gem::Dependency
49
+ name: activesupport
50
+ prerelease: false
51
+ requirement: &id003 !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 2
57
+ - 3
58
+ - 5
59
+ version: 2.3.5
60
+ type: :development
61
+ version_requirements: *id003
34
62
  description: "\n Allows a simple declarative idiom for accessing resources in controllers and views\n "
35
63
  email: mby@mattyoho.com
36
64
  executables: []