spec/praxis/links_spec.rb in praxis-0.16.1 vs spec/praxis/links_spec.rb in praxis-0.17.0

- old
+ new

@@ -17,16 +17,33 @@ it 'returns the link class for the media type if defined' do expect(link.for(Address)).to eq(link) end - context 'rendering' do + context 'contents' do subject(:view) { link.view(:default) } its(:name) { should eq(:default) } its(:schema) { should eq(Address::Links) } its(:contents) { should have_key(:owner) } its(:contents) { should have_key(:super) } + end + + context 'rendering' do + let(:example){ Address.example } + context 'for :default' do + subject(:rendered_links){ example.render(view: :default)[:links] } + + it 'should use the :link for rendering its attributes' do + expect(rendered_links[:owner]).to eq( example.owner.render(view: :link)) + end + end + context 'for :master' do + subject(:rendered_links){ example.render(view: :master)[:links] } + it 'should use the :link for rendering its attributes' do + expect(rendered_links[:owner]).to eq( example.owner.render(view: :link)) + end + end end context '.example' do subject(:example) { Address.example }