Why does rendered.should have_field pass when it shouldn't?

This is my new.html.erb_spec.rb:

let(:meal) do

mock_model(“Meal”).as_new_record.as_null_object

end

before(:each) do

assign(:meal, meal)

end

it “shows the name text field” do

render

rendered.should have_field(:name) # checks for both the label and the text field… right?

end

it “shows the description text area” do

pending “This passes when it shouldn’t”

render

rendered.should have_field(:description) # have_field is for text fields and text areas (w/labels)… right?

end

it “shows the ingredients text area” do

pending “This passes when it shouldn’t”

render

rendered.should have_field(:ingredients)

end

Maybe this question is a little to wordy, so I’ll just ask this:

Could someone just tell me if

‘’‘’

it “shows the name text field” do

render

rendered.should have_field(:name)

end ‘’‘’

…checks for both the label and the text field? How come when I have ONE text field in my view, all such have_field(:blahs) pass? They shouldn’t! I must be missing something…