Guru Cifani lol 2012/5/23 thiagocifani <cifani.thi...@gmail.com>
> Are u using mocha? If you are using mocha, I think you should write > something like that: > > mock('post', hash) > > > regards > > > 2012/5/23 Kleber Shimabuku <klebershimab...@gmail.com> > >> Hi guys, >> >> I'm starting to write tests and I writing a functional test for my >> 'create' action. >> >> So, basically I have the following test: >> >> describe '#create' do >> >> @attributes = { title: 'New post', description: 'Please add some text >> here', location: 'Anywhere' } >> >> context 'when logged in' do >> login_user >> before { post :create, @attributes } >> >> it 'should create a new post' do >> post = mock(Post, @attributes) >> assigns(:post).should_not be_nil >> Post.should_receive(:save).and_return(post) >> response.should redirect_to successful_submitted_posts_path >> end >> it 'should NOT create a new post' do >> end >> end >> >> context 'when NOT logged in' do >> before { post :create, @attributes } >> it { response.should_not be_successful } >> it { response.should redirect_to new_user_session_path } >> end >> >> end >> >> But it's failing and I don't get understand why. >> >> 1) PostsController#create when logged in should create a new post >> Failure/Error: post = mock(Post, @attributes) >> ArgumentError: >> wrong number of arguments (3 for 2) >> # ./spec/controllers/posts_controller_spec.rb:40:in `block (4 >> levels) in <top (required)>' >> >> Finished in 0.77996 seconds >> 6 examples, 1 failure >> >> why mock method expects 3 arguments? what they should be? >> >> I have read on some blogs this kind of syntax. >> >> mock(Object, hash) >> >> >> And this is my controller: >> >> # encoding: utf-8 >> class PostsController < ApplicationController >> load_and_authorize_resource >> before_filter :authenticate_user! >> respond_to :html >> >> def new >> @post = Post.new >> end >> >> def create >> @post = current_user.posts.build(params[:post]) >> if @post.save >> redirect_to successful_submitted_posts_path >> else >> render :new >> end >> end >> >> def successful_submitted; end >> end >> >> >> What I'm doing wrong? >> >> Please give me some hints. >> >> Thank you. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Ruby on Rails: Talk" group. >> To view this discussion on the web visit >> https://groups.google.com/d/msg/rubyonrails-talk/-/ouy4grWHNOwJ. >> To post to this group, send email to rubyonrails-talk@googlegroups.com. >> To unsubscribe from this group, send email to >> rubyonrails-talk+unsubscr...@googlegroups.com. >> For more options, visit this group at >> http://groups.google.com/group/rubyonrails-talk?hl=en. >> > > > > -- > thiagocifani > http://thiagocifani.wordpress.com/ > twitter.com/thiagocifani > del.icio.us/thiagocifani > <http://del.icio.us/thiagocifani> > > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to rubyonrails-talk@googlegroups.com. > To unsubscribe from this group, send email to > rubyonrails-talk+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. > -- att, Rogerio A complicação se descomplica na mesma proporção que fazemos os nós se desatarem ao tecer o conhecimento do saber. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.