I know... I just don't use create!, in this special case, because it will be more complicate to know what field have the error . I'm still scratching my head, my @tenant instance var on spec has values for user_id and owner_id and don't understand why my validates_associated :property raise an error.
And if I mock model on model spec will not be a good thing. Atenciosamente, Daniel Lopes Area Criações Design, Websites e Sistemas Web Visite: http://www.areacriacoes.com.br/projects http://blog.areacriacoes.com.br/ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 55 (31) 3077-4560 / 55 (31) 8808-8748 / 55 (31) 8737-7501 On Wed, Dec 17, 2008 at 10:45 PM, aslak hellesoy <aslak.helle...@gmail.com>wrote: > > > On Thu, Dec 18, 2008 at 1:38 AM, Daniel Lopes <danielvlo...@gmail.com>wrote: > >> Hello Pat, the error still the sa...@errors={"user"=>["can't be blank"]} >> >> But if we look on @base we have user: >> @base=#<Property id: 996332877, user_id: 317248456, owner_id: 465176508, >> ... > >> >> And my code is: >> describe Tenant do >> fixtures :properties, :users ,:owners >> >> def create_tenant(options = {}) >> record = Tenant.create({ >> > > Just a small tip. Always, always use create! in specs. You want an error to > be raised in case creation is unsuccessful, and create doesn't do that - it > just returns false. > > Aslak > > >> :property => properties(:two), >> :renters => "value for renters", >> :guarantor => "value for guarantor", >> :contact_name => "value for contact_name", >> :contact_phone => "value for contact_phone", >> :contact_email => "te...@hosttest.com", >> :end_date => Date.today, >> :beginning_date => Date.today, >> :initial_value => "9.99" >> }.merge(options)) >> end >> >> before(:each) do >> @tenant = create_tenant >> end >> >> it "should create a new instance given valid attributes" do >> properties(:two).valid? >> p properties(:two).errors >> # @tenant.errors.should be_empty >> end >> >> And my fixtures still the same... I don't know what's happening, when I >> try run on console or in browser everything ok... I think is something >> strange with fixtures. >> >> Atenciosamente, >> >> Daniel Lopes Area Criações >> Design, Websites e Sistemas Web >> >> Visite: http://www.areacriacoes.com.br/projects >> http://blog.areacriacoes.com.br/ >> >> * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * >> * * >> 55 (31) 3077-4560 / 55 (31) 8808-8748 / 55 (31) 8737-7501 >> >> >> On Wed, Dec 17, 2008 at 10:14 PM, Pat Maddox <perg...@gmail.com> wrote: >> >>> On Wed, Dec 17, 2008 at 2:13 PM, Daniel Lopes <danielvlo...@gmail.com> >>> wrote: >>> > Hello Pat, even I load all my fixtures it still not reading anything >>> from >>> > users.yml ... >>> > I will look at factory_girl but before I need understand what >>> happening. >>> > I try this: >>> > require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') >>> > describe Tenant do >>> > fixtures :properties, :users , :owners >>> > def create_tenant(options = {}) >>> > record = Tenant.create({ >>> > :property => properties(:two), >>> > :renters => "value for renters", >>> > :guarantor => "value for guarantor", >>> > :contact_name => "value for contact_name", >>> > :contact_phone => "value for contact_phone", >>> > :contact_email => "te...@hosttest.com", >>> > :end_date => Date.today, >>> > :beginning_date => Date.today, >>> > :initial_value => "9.99" >>> > }.merge(options)) >>> > end >>> > >>> > before(:each) do >>> > @tenant = create_tenant >>> > end >>> > >>> > it "should create a new instance given valid attributes" do >>> > p properties(:two).errors >>> > properties(:two).should be_valid >>> > # @tenant.errors.should be_empty >>> > end >>> > end >>> >>> What error are you getting now? Please post whatever error you're >>> experiencing...when we change this code, I expect a different error, >>> and would not know what it is. If it's the same, that's strange. >>> >>> Also, I noticed you have >>> p properties(:two).errors >>> properties(:two).should be_valid >>> >>> That's not going to show you anything, because errors don't get added >>> until you call #valid? So change that to >>> >>> properties(:two).valid? >>> p properties(:two).errors >>> >>> Pat >>> _______________________________________________ >>> rspec-users mailing list >>> rspec-users@rubyforge.org >>> http://rubyforge.org/mailman/listinfo/rspec-users >>> >> >> >> _______________________________________________ >> rspec-users mailing list >> rspec-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/rspec-users >> > > > _______________________________________________ > rspec-users mailing list > rspec-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/rspec-users >
_______________________________________________ rspec-users mailing list rspec-users@rubyforge.org http://rubyforge.org/mailman/listinfo/rspec-users