I call a test method on posting data to a signup form
def test_bad_signup
u = User.new
post :signup, :user => { :login => “newbob”, :password =>
“newpassword”, :password_confirmation => “wrong” , :email =>
“[email protected]”}
assert_response :success
assert !u.valid?
assert u.errors.on(:password)
assert_template “user/signup”
assert_nil session[:user]
end
Here is the signup.html.erb
<%= form_tag :action=> “signup” %>
<%= error_messages_for ‘user’ %>
Username
<%= text_field “user”, “login”, :size => 20 %>
Password
<%= password_field “user”, “password”, :size => 20 %>
Password
Confirmation
<%= password_field “user”, “password_confirmation”, :size => 20 %>
Email
<%= text_field “user”, “email”, :size => 20 %>
<%= submit_tag “signup” %>
<% end %>
I get the following error:
test_bad_signup(UserControllerTest):
ActionView::TemplateError:
C:/VR/RailsPrograms/health/app/views/user/signup.html
.erb:24: syntax error, unexpected keyword_ensure, expecting $end
On line #24 of app/views/user/signup.html.erb
21:
22: <% end %>
test/functional/user_controller_test.rb:43:in test_bad_signup' C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:436:in
run’
C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:415:in block (2 levels) in run_te st_suites' C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:409:in
each’
C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:409:in block in run_test_suites' C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:408:in
each’
C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:408:in run_test_suites' C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:388:in
run’
C:/Ruby19/lib/ruby/1.9.1/minitest/unit.rb:329:in `block in autorun’
Can someone please tell me what is wrong?