add spec for request_headers (#42)

* log for request headers

* add specification

* fix spec

* optimize readme

* add spec for request_headers
This commit is contained in:
Kun Liu 2017-10-13 01:46:51 -05:00 committed by Adrian Serafin
parent 54f3fa84e0
commit 83117bc7e1
2 changed files with 26 additions and 1 deletions

View file

@ -17,7 +17,6 @@ module GrapeLogging
{ headers: headers }
end
end
end
end

View file

@ -6,9 +6,35 @@ describe GrapeLogging::Loggers::RequestHeaders do
OpenStruct.new(env: {HTTP_REFERER: 'http://example.com', HTTP_ACCEPT: 'text/plain'})
end
let(:mock_request_with_unhandle_headers) do
OpenStruct.new(env: {
HTTP_REFERER: 'http://example.com',
"PATH_INFO"=>"/api/v1/users"
})
end
let(:mock_request_with_long_headers) do
OpenStruct.new(env: {
HTTP_REFERER: 'http://example.com',
HTTP_USER_AGENT: "Mozilla/5.0"
})
end
it 'strips HTTP_ from the parameter' do
expect(subject.parameters(mock_request, nil)).to eq({
headers: {'Referer' => 'http://example.com', 'Accept' => 'text/plain'}
})
end
it 'only handle things which start with HTTP_' do
expect(subject.parameters(mock_request_with_unhandle_headers, nil)).to eq({
headers: {'Referer' => 'http://example.com' }
})
end
it 'substitutes _ with -' do
expect(subject.parameters(mock_request_with_long_headers, nil)).to eq({
headers: {'Referer' => 'http://example.com', 'User-Agent' => 'Mozilla/5.0' }
})
end
end