2012-11-15 06:43:14 +01:00
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe Zero::Request::Client, '#address' do
|
|
|
|
subject { Zero::Request::Client.new(env) }
|
|
|
|
|
2014-03-05 09:42:49 +01:00
|
|
|
context 'without a proxy' do
|
|
|
|
let(:address) { '127.0.0.1' }
|
|
|
|
let(:env) { {'REMOTE_ADDR' => address} }
|
|
|
|
|
|
|
|
its(:address) { should == address }
|
|
|
|
end
|
|
|
|
|
|
|
|
context 'with a proxy' do
|
|
|
|
let(:proxy) { '127.0.0.1' }
|
|
|
|
let(:address) { '192.168.42.3' }
|
|
|
|
let(:env) do
|
|
|
|
{
|
|
|
|
'REMOTE_ADDR' => proxy,
|
2014-03-05 10:06:07 +01:00
|
|
|
'HTTP_X_FORWARDED_FOR' => address
|
2014-03-05 09:42:49 +01:00
|
|
|
}
|
|
|
|
end
|
|
|
|
|
|
|
|
its(:address) { should == address }
|
|
|
|
its(:remote_address) { should == proxy }
|
|
|
|
its(:forwarded_for) { should == address }
|
|
|
|
end
|
2012-11-15 06:43:14 +01:00
|
|
|
end
|