# encoding: UTF-8 shared_examples 'WpItem::Infos' do # 3 expected urls have to be set in the described class (or subject) # e.g : # let(:readme_url) { } # let(:changelog_url) { } # let(:error_log_url) { } describe '#readme_url' do it 'returns the correct url' do subject.readme_url.should == readme_url end end describe '#has_readme?' do after :each do stub_request(:get, subject.readme_url).to_return(status: @status) subject.has_readme?.should === @expected end it 'returns true on a 200' do @status = 200 @expected = true end it 'returns false otherwise' do @status = 404 @expected = false end end describe '#changelog_url' do it 'returns the correct url' do subject.changelog_url.should == changelog_url end end describe '#has_changelog?' do after :each do stub_request(:get, subject.changelog_url).to_return(status: @status) subject.has_changelog?.should === @expected end it 'returns true on a 200' do @status = 200 @expected = true end it 'returns false otherwise' do @status = 404 @expected = false end end describe '#has_directory_listing?' do after do stub_request(:get, subject.uri.to_s).to_return(@stub_return) subject.has_directory_listing?.should === @expected end context 'when the body contains