I have a functional test suite failing in a Rails 2.2.2 application. The exception thrown, and the associated lines are below:
ActionView::TemplateError: Attempt to call private method
On line #55 of app/views/wine/view.html.erb
53: <% for activity in @activities %>
54:
55: <% if activity.context == 'ItemComment' %>
56: <%= render :partial => 'item_comments/comment', :object => ItemComment.find(activity.context_id) %>
57: <% elsif activity.context == 'Review' %>
58: <%= render :partial => 'reviews/review', :object => Review.find(activity.context_id) %>
This code functions as expected in every other environment besides test; moreover activity
is merely an instance of an ActiveRecord called Activity, and context
is a varchar column within the activities
table. I am not overloading the getter or setter for context
in the model. It is about as vanilla as you can get.
I'm baffled — I have never seen this before, and all attempts to isolate the cause have proved futile, as have Google searches.