From a6a1dc967cb65ac3f842d15f89eef7e32f7547cf Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Fri, 1 Jun 2007 03:53:39 +0000 Subject: render :partial recognizes Active Record associations as Arrays. Closes #8538. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6920 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- ...nder_partial_with_record_identification_test.rb | 64 ++++++++++++++++++++++ actionpack/test/fixtures/topic.rb | 2 +- 2 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 actionpack/test/activerecord/render_partial_with_record_identification_test.rb (limited to 'actionpack/test') diff --git a/actionpack/test/activerecord/render_partial_with_record_identification_test.rb b/actionpack/test/activerecord/render_partial_with_record_identification_test.rb new file mode 100644 index 0000000000..7aeb1192f1 --- /dev/null +++ b/actionpack/test/activerecord/render_partial_with_record_identification_test.rb @@ -0,0 +1,64 @@ +require File.dirname(__FILE__) + '/../active_record_unit' + +class RenderPartialWithRecordIdentificationTest < ActiveRecordTestCase + fixtures :developers, :projects, :developers_projects, :topics, :replies + + class RenderPartialWithRecordIdentificationController < ActionController::Base + def render_with_has_many_and_belongs_to_association + @developer = Developer.find(1) + render :partial => @developer.projects + end + + def render_with_has_many_association + @topic = Topic.find(1) + render :partial => @topic.replies + end + + def render_with_belongs_to_association + @reply = Reply.find(1) + render :partial => @reply.topic + end + + def render_with_record + @developer = Developer.find(:first) + render :partial => @developer + end + + def render_with_record_collection + @developers = Developer.find(:all) + render :partial => @developers + end + end + + def setup + @controller = RenderPartialWithRecordIdentificationController.new + @request = ActionController::TestRequest.new + @response = ActionController::TestResponse.new + super + end + + def test_rendering_partial_with_has_many_and_belongs_to_association + get :render_with_has_many_and_belongs_to_association + assert_template 'projects/_project' + end + + def test_rendering_partial_with_has_many_association + get :render_with_has_many_association + assert_template 'replies/_reply' + end + + def test_rendering_partial_with_belongs_to_association + get :render_with_belongs_to_association + assert_template 'topics/_topic' + end + + def test_render_with_record + get :render_with_record + assert_template 'developers/_developer' + end + + def test_render_with_record_collection + get :render_with_record_collection + assert_template 'developers/_developer' + end +end diff --git a/actionpack/test/fixtures/topic.rb b/actionpack/test/fixtures/topic.rb index 0beeecf28d..9fa9746535 100644 --- a/actionpack/test/fixtures/topic.rb +++ b/actionpack/test/fixtures/topic.rb @@ -1,3 +1,3 @@ class Topic < ActiveRecord::Base - has_many :replies, :include => [:user], :dependent => :destroy + has_many :replies, :dependent => :destroy end -- cgit v1.2.3