@@ -147,6 +147,12 @@ class ExtractorDummy
147147 expect ( result [ :headers ] [ 'X-Forwarded-For' ] ) . to be_eql ( '2.2.2.2, 3.3.3.3' )
148148 end
149149
150+ it 'extracts the correct X-Real-Ip' do
151+ result = subject . extract_request_data_from_rack ( env )
152+
153+ expect ( result [ :headers ] [ 'X-Real-Ip' ] ) . to be_eql ( '2.2.2.2' )
154+ end
155+
150156 context 'with collect_user_ip configuration option disabled' do
151157 before do
152158 Rollbar . configuration . collect_user_ip = false
@@ -163,6 +169,12 @@ class ExtractorDummy
163169
164170 expect ( result [ :headers ] [ 'X-Forwarded-For' ] ) . to be_nil
165171 end
172+
173+ it 'does not extract user\'s IP on X-Real-Ip header' do
174+ result = subject . extract_request_data_from_rack ( env )
175+
176+ expect ( result [ :headers ] [ 'X-Real-Ip' ] ) . to be_nil
177+ end
166178 end
167179
168180 context 'with anonymize_user_ip configuration option enabled' do
@@ -181,6 +193,12 @@ class ExtractorDummy
181193
182194 expect ( result [ :headers ] [ 'X-Forwarded-For' ] ) . to be_eql ( '2.2.2.0, 3.3.3.0' )
183195 end
196+
197+ it 'it anonymizes IP addresses in X-Real-Ip' do
198+ result = subject . extract_request_data_from_rack ( env )
199+
200+ expect ( result [ :headers ] [ 'X-Real-Ip' ] ) . to be_eql ( '2.2.2.0' )
201+ end
184202 end
185203 end
186204
@@ -199,6 +217,12 @@ class ExtractorDummy
199217
200218 expect ( result [ :headers ] [ 'X-Forwarded-For' ] ) . to be_eql ( '192.168.1.1, 2.2.2.2, 3.3.3.3' )
201219 end
220+
221+ it 'extracts the correct X-Real-Ip' do
222+ result = subject . extract_request_data_from_rack ( env )
223+
224+ expect ( result [ :headers ] [ 'X-Real-Ip' ] ) . to be_eql ( '2.2.2.2' )
225+ end
202226 end
203227 end
204228
0 commit comments