On Sun, 25 Apr 2010, Phillip Koebbe wrote: > See http://gist.github.com/378489 for how I ended up specing a file upload. > This isn't the exact same situation, but maybe you will get some ideas that > will help. And there may be a better way, but this seems to work and is fairly > easy for me understand.
Yeah, I see what you're doing, but I don't quite get how I could apply this to what I am doing. I have a method that creates a contact and then creates a photo and assigns it to that contact. So my problem comes from doing (in my model method): @contact.photo = Photo.create(...) ... Although the code works fine in the real world app use, the spec fails because it's trying to do something with "[]=" .. which I don't get. ---- Also, I have a couple side questions-- 1) is there some sort of caching done to before(:all/:each) blocks? I had a before block that set an instance variable to something, and then I removed it-- and was getting weird behavior, and after doing some inspecting I found that the instance variable was still set-- even though it was not set anywhere in the code... I had to put a blank before block in there to get that behavior to stop... Just wondered if this is normal? ... 2) I still am struggling with mock vs stub-- or I should say stub! vs. should_receive. Initially I had something like this: before(:all) do foo = mock_model) Foo.should_receive(:find_by_name).with("bar").and_receive(foo) end it "blah" do 3.times { @blah.do_something } do it "blah2" do 3.times { @blah.do_something } end (blah model) def do_something @foo = Foo.find_by_name("bar") end This wasn't working, because apparently it's only good for one usage. I was thinking that declating "should_receive" would mean that anytime Foo gets .find_by_name called on it, it will have that behavior. I ended up changing that to a before(:each), and then I got errors like expected it 1 time but got it 3 times.... So not knowing how to deal with that, I changed .should_receive to .stub! and then the errors went away. Not sure if that was the right thing to do in that case. Patrick J. Collins http://collinatorstudios.com _______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users