Files
wpscan/spec/shared_examples/web_site/interesting_headers.rb
2014-06-02 22:06:49 +02:00

36 lines
1.0 KiB
Ruby

# encoding: UTF-8
shared_examples 'WebSite::InterestingHeaders' do
let(:known_headers) { WebSite::InterestingHeaders.known_headers }
describe '#interesting_headers' do
it 'returns MyTestHeader' do
stub_request(:head, web_site.url).
to_return(status: 200, headers: { 'Mytestheader' => 'Mytestheadervalue' })
expect(web_site.interesting_headers).to match_array [ [ 'MYTESTHEADER', 'Mytestheadervalue' ] ]
end
it 'removes known headers' do
stub_request(:head, web_site.url).
to_return(status: 200, headers: { 'Location' => 'a', 'Connection' => 'Close' })
expect(web_site.interesting_headers).to be_empty
end
it 'returns nothing' do
stub_request(:head, web_site.url).
to_return(status: 200, headers: { })
expect(web_site.interesting_headers).to be_empty
end
end
describe '#known_headers' do
it 'does not contain duplicates' do
expect(known_headers.flatten.uniq.length).to eq known_headers.length
end
end
end