Ruby on Rails Friday, August 2, 2013

Joao,


I am not sure you getting testing right! everytime you find something like this that looks hard to test, maybe you should rethink your tests.

I Would for example on controller testing, which is functional, be more worried to test, if the function did what it was supposed to and on the features/request tests check if my applications is working correctly with js.

I am not sure for this example but just a little tip from what I have seen in testing before!

all the best,

Andre

On Friday, 2 August 2013 00:47:59 UTC+2, João Pereira wrote:

I found the the xml_http_request or alias xhr for that

test "should render js to show the change password form" do     sign_in_user       xhr :get, :enable_password_change       assert_template :enable_password_change     assert_response :ok     assert assigns(:merchant_user)  end


http://jpereira.eu

On Friday, July 26, 2013 1:10:30 AM UTC+2, João Pereira wrote:

I have this controller:

class UsersController < ApplicationController    def enable_password_change      respond_to do |format|        format.js {          render :layout => false        }      end    end  end

And the following test:

test "should render js to show the change password form" do    sign_in_user    request_javascript    get :enable_password_change    assert_template :enable_password_change    assert_response :ok  end

And the helper method to set the request headers:

def request_javascript    @request.headers["Accepts"] = "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"  end

However my test reports:

Finished tests in 0.942294s, 7.4287 tests/s, 15.9186 assertions/s.    1) Error:  UsersControllerTest#test_should_render_js_to_show_the_change_password_for:  ActionController::UnknownFormat: ActionController::UnknownFormat  app/controllers/users_controller.rb:9:in `enable_password_change'  test/controllers/users_controller_test.rb:14:in `block in <class:UsersControllerTest>'    7 tests, 15 assertions, 0 failures, 1 errors, 0 skips

What am I doing wrong here?

P.S. Also posted on http://stackoverflow.com/questions/17870266/testing-if-a-controller-renders-a-js-template

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/a16205c4-b5fd-441e-bac5-f9f7690712dd%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments:

Post a Comment