sferik-merb-admin 0.3.3 → 0.3.4

Sign up to get free protection for your applications and to get access to all the features.
data/README.markdown CHANGED
@@ -14,7 +14,7 @@ At the command prompt, type:
14
14
 
15
15
  In your app, add the following dependency to `config/dependencies.rb`:
16
16
 
17
- dependency "sferik-merb-admin", "0.3.3", :require_as => "merb-admin"
17
+ dependency "sferik-merb-admin", "0.3.4", :require_as => "merb-admin"
18
18
  dependency "dm-is-paginated", "0.0.1" # if you want pagination support
19
19
 
20
20
  Add the following route to `config/router.rb`:
data/Rakefile CHANGED
@@ -12,7 +12,7 @@ AUTHOR = "Erik Michaels-Ober"
12
12
  EMAIL = "sferik@gmail.com"
13
13
  HOMEPAGE = "http://twitter.com/sferik"
14
14
  SUMMARY = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
15
- GEM_VERSION = "0.3.3"
15
+ GEM_VERSION = "0.3.4"
16
16
 
17
17
  spec = Gem::Specification.new do |s|
18
18
  s.rubyforge_project = "merb"
@@ -164,7 +164,7 @@ class MerbAdmin::Main < MerbAdmin::Application
164
164
  def update_has_one_association(association, id)
165
165
  model = MerbAdmin::AbstractModel.new(association[:child_model])
166
166
  if object = model.find(id)
167
- object.update_attributes(association[:child_key] => @object.id)
167
+ object.update_attributes(association[:child_key].first => @object.id)
168
168
  end
169
169
  end
170
170
 
@@ -1,4 +1,5 @@
1
1
  <%
2
+ selected = MerbAdmin::AbstractModel.new(association[:child_model]).find_all(association[:child_key].first => @object.id).first
2
3
  required = false
3
4
  @properties.each do |property|
4
5
  next unless property[:name] == association[:child_key].first
@@ -16,7 +17,7 @@ end
16
17
  </ul>
17
18
  <% end %>
18
19
  <div>
19
- <%= select(:name => "associations[#{association[:name]}][]", :id => association[:name], :collection => MerbAdmin::AbstractModel.new(association[:child_model]).find_all.map{|o| [o.id, object_title(o)]}.sort_by{|o| o[1]}, :include_blank => true, :selected => @object.send(association[:parent_key].first).to_s, :label => association[:pretty_name].capitalize) %>
20
+ <%= select(:name => "associations[#{association[:name]}][]", :id => association[:name], :collection => MerbAdmin::AbstractModel.new(association[:child_model]).find_all.map{|o| [o.id, object_title(o)]}.sort_by{|o| o[1]}, :include_blank => true, :selected => selected ? selected.id.to_s : nil, :label => association[:pretty_name].capitalize) %>
20
21
  <p class="help">
21
22
  <%= required ? "Required." : "Optional." %>
22
23
  </p>
data/lib/merb-admin.rb CHANGED
@@ -23,7 +23,7 @@ if defined?(Merb::Plugins)
23
23
 
24
24
  # Slice metadata
25
25
  self.description = "MerbAdmin is a Merb plugin that provides an easy-to-use interface for managing your data."
26
- self.version = "0.3.3"
26
+ self.version = "0.3.4"
27
27
  self.author = "Erik Michaels-Ober"
28
28
 
29
29
  # Stub classes loaded hook - runs before LoadClasses BootLoader
@@ -4,11 +4,8 @@ given "a player exists" do
4
4
  @player = Player.gen
5
5
  end
6
6
 
7
- given "two drafts exist" do
8
- @drafts = []
9
- 2.times do
10
- @drafts << Draft.gen
11
- end
7
+ given "a draft exists" do
8
+ @draft = Draft.gen
12
9
  end
13
10
 
14
11
  given "two players exist" do
@@ -25,12 +22,9 @@ given "three teams exist" do
25
22
  end
26
23
  end
27
24
 
28
- given "a player exists and two drafts exist" do
25
+ given "a player exists and a draft exists" do
29
26
  @player = Player.gen
30
- @drafts = []
31
- 2.times do
32
- @drafts << Draft.gen
33
- end
27
+ @draft = Draft.gen
34
28
  end
35
29
 
36
30
  given "a player exists and three teams exist" do
@@ -109,11 +103,11 @@ describe "MerbAdmin" do
109
103
  @response.should be_successful
110
104
  end
111
105
 
112
- it "should contain correct results" do
106
+ it "should contain a correct result" do
113
107
  @response.body.should contain("Jackie Robinson")
114
108
  end
115
109
 
116
- it "should not contain incorrect results" do
110
+ it "should not contain an incorrect result" do
117
111
  @response.body.should_not contain("Sandy Koufax")
118
112
  end
119
113
  end
@@ -161,11 +155,11 @@ describe "MerbAdmin" do
161
155
  @response.should be_successful
162
156
  end
163
157
 
164
- it "should contain correct results" do
158
+ it "should contain a correct result" do
165
159
  @response.body.should contain("Jackie Robinson")
166
160
  end
167
161
 
168
- it "should not contain incorrect results" do
162
+ it "should not contain an incorrect result" do
169
163
  @response.body.should_not contain("David Wright")
170
164
  end
171
165
  end
@@ -181,11 +175,11 @@ describe "MerbAdmin" do
181
175
  @response.should be_successful
182
176
  end
183
177
 
184
- it "should contain correct results" do
178
+ it "should contain a correct result" do
185
179
  @response.body.should contain("Jackie Robinson")
186
180
  end
187
181
 
188
- it "should not contain incorrect results" do
182
+ it "should not contain an incorrect result" do
189
183
  @response.body.should_not contain("Dottie Hinson")
190
184
  end
191
185
  end
@@ -280,7 +274,7 @@ describe "MerbAdmin" do
280
274
  end
281
275
  end
282
276
 
283
- describe "new with has-one association", :given => "two drafts exist" do
277
+ describe "new with has-one association", :given => "a draft exists" do
284
278
  before(:each) do
285
279
  @response = request(url(:admin_new, :model_name => "player"))
286
280
  end
@@ -314,7 +308,7 @@ describe "MerbAdmin" do
314
308
  end
315
309
  end
316
310
 
317
- describe "edit with has-one association", :given => "a player exists and two drafts exist" do
311
+ describe "edit with has-one association", :given => "a player exists and a draft exists" do
318
312
  before(:each) do
319
313
  @response = request(url(:admin_edit, :model_name => "player", :id => @player.id))
320
314
  end
@@ -387,21 +381,17 @@ describe "MerbAdmin" do
387
381
  end
388
382
  end
389
383
 
390
- describe "create with has-one association", :given => "two drafts exist" do
384
+ describe "create with has-one association", :given => "a draft exists" do
391
385
  before(:each) do
392
- @response = request(url(:admin_create, :model_name => "player"), :method => "post", :params => {:player => {:name => "Jackie Robinson", :number => 42, :team_id => 1, :position => :second, :sex => :male}, :associations => {:draft => @drafts[0].id}})
386
+ @response = request(url(:admin_create, :model_name => "player"), :method => "post", :params => {:player => {:name => "Jackie Robinson", :number => 42, :team_id => 1, :position => :second, :sex => :male}, :associations => {:draft => @draft.id}})
393
387
  end
394
388
 
395
389
  it "should create a new object" do
396
390
  Player.first.should_not be_nil
397
391
  end
398
392
 
399
- it "should include correct associations" do
400
- Player.first.draft.should == @drafts[0]
401
- end
402
-
403
- it "should not include incorrect associations" do
404
- Player.first.draft.should_not == @drafts[1]
393
+ it "should be associated with the correct object" do
394
+ Player.first.draft.should == @draft
405
395
  end
406
396
  end
407
397
 
@@ -414,12 +404,12 @@ describe "MerbAdmin" do
414
404
  League.first.should_not be_nil
415
405
  end
416
406
 
417
- it "should include correct associations" do
407
+ it "should be associated with the correct objects" do
418
408
  League.first.teams.should include(@teams[0])
419
409
  League.first.teams.should include(@teams[1])
420
410
  end
421
411
 
422
- it "should not include incorrect associations" do
412
+ it "should be not associated with an incorrect object" do
423
413
  League.first.teams.should_not include(@teams[2])
424
414
  end
425
415
  end
@@ -476,21 +466,17 @@ describe "MerbAdmin" do
476
466
  end
477
467
  end
478
468
 
479
- describe "update with has-one association", :given => "a player exists and two drafts exist" do
469
+ describe "update with has-one association", :given => "a player exists and a draft exists" do
480
470
  before(:each) do
481
- @response = request(url(:admin_update, :model_name => "player", :id => @player.id), :method => "put", :params => {:player => {:name => "Jackie Robinson", :number => 42, :team_id => 1, :position => :second, :sex => :male}, :associations => {:draft => @drafts[0].id}})
471
+ @response = request(url(:admin_update, :model_name => "player", :id => @player.id), :method => "put", :params => {:player => {:name => "Jackie Robinson", :number => 42, :team_id => 1, :position => :second, :sex => :male}, :associations => {:draft => @draft.id}})
482
472
  end
483
473
 
484
474
  it "should update an object that already exists" do
485
475
  Player.first(:id => @player.id).name.should eql("Jackie Robinson")
486
476
  end
487
477
 
488
- it "should include correct associations" do
489
- Player.first.draft.should == @drafts[0]
490
- end
491
-
492
- it "should not include incorrect associations" do
493
- Player.first.draft.should_not == @drafts[1]
478
+ it "should be associated with the correct object" do
479
+ Player.first.draft.should == @draft
494
480
  end
495
481
  end
496
482
 
@@ -503,12 +489,12 @@ describe "MerbAdmin" do
503
489
  League.first(:id => @league.id).name.should eql("National League")
504
490
  end
505
491
 
506
- it "should include correct associations" do
492
+ it "should be associated with the correct objects" do
507
493
  League.first.teams.should include(@teams[0])
508
494
  League.first.teams.should include(@teams[1])
509
495
  end
510
496
 
511
- it "should not include incorrect associations" do
497
+ it "should not be associated with an incorrect object" do
512
498
  League.first.teams.should_not include(@teams[2])
513
499
  end
514
500
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sferik-merb-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.3
4
+ version: 0.3.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Michaels-Ober