2017-03-02 6 views

Antwort

0

das Modell in Frage Annahme, daß Car genannt (Sie haben nicht den Namen der umgebenden Klasse geschrieben, so bin ich total machen diese nach oben) können Sie es als Test:

describe 'user' do 
    let(:car) { create_car_somehow } 

    it 'preloads the user_profile association' do 
    expect(car.user.association(:user_profile)).to be_loaded 
    end 
end 

#association kehrt Metadaten die angegebene Zuordnung (vom Typ ActiveRecord::Associations::BelongsToAssociation und so weiter). Das zurückgegebene Objekt antwortet auf #loaded?, das true zurückgibt, wenn die Zuordnung geladen worden ist, und andernfalls false.

+1

wo ist 'be_loaded' definiert? Können Sie einen Link zu den Dokumenten veröffentlichen? – Anthony

+1

Es ist ein dynamischer [Prädikat Matcher] (https://www.relishapp.com/rspec/rspec-expectations/v/2-2/docs/matchers/predicate-matchers) definiert im laufenden Betrieb. Im Grunde wird 'expect (object) .to be_foo' automatisch in' expect (object.foo?). To betruthy' umgewandelt. –