Rails, RSpec y Webrat: la salida esperada coincide con la salida renderizada pero sigue obteniendo un error en la especificación de vista

Acabo de comenzar a usar BDD con RSpec / Cucumber / Webrat and Rails y me he encontrado con una frustración al intentar que pasara la especificación de mi vista.

En primer lugar, estoy ejecutando Ruby 1.9.1p129 con Rails 2.3.2, RSpec y RSpec-Rails 1.2.6, Pepino 0.3.11 y Webrat 0.4.4.

Aquí está el código relevante a mi pregunta

config / route.rb:

map.b_posts                  'backend/posts',
                             :controller => 'backend/posts',
                             :action => 'backend_index',
                             :conditions => { :method => :get }

map.connect                  'backend/posts',
                             :controller => 'backend/posts',
                             :action => 'create',
                             :conditions => { :method => :post }

views / backend / posts / create.html.erb:

<% form_tag do %>
<% end %>

spec / views / backend / posts / create.html.erb_spec.rb:

describe "backend/posts/create.html.erb" do  
  it "should render a form to create a post" do
    render "backend/posts/create.html.erb"
    response.should have_selector("form", :method => 'post', :action => b_posts_path) do |form|
      # Nothing here yet.
    end
  end
end

Aquí está la parte relevante de la salida cuando ejecuto script / spec:

'backend/posts/create.html.erb should render a form to create a post' FAILED
expected following output to contain a <form method='post' action='/backend/posts'/> tag:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><body><form action="/backend/posts" method="post">
</form></body></html>

Me parece que have_selector está buscando exactamente lo que genera la plantilla, pero el ejemplo sigue fallando. Tengo muchas ganas de ver mi error (porque tengo la sensación de que esmi error). ¡Cualquier ayuda es muy apreciada!

Respuestas a la pregunta(1)

Su respuesta a la pregunta