Spec for newline in request lib initialize (#36170)
Some checks failed
Bundler Audit / security (push) Has been cancelled
Check i18n / check-i18n (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (ruby) (push) Has been cancelled
Check formatting / lint (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
Ruby Linting / lint (push) Has been cancelled
Historical data migration test / test (14-alpine) (push) Has been cancelled
Historical data migration test / test (15-alpine) (push) Has been cancelled
Historical data migration test / test (16-alpine) (push) Has been cancelled
Historical data migration test / test (17-alpine) (push) Has been cancelled
Ruby Testing / build (production) (push) Has been cancelled
Ruby Testing / build (test) (push) Has been cancelled
Ruby Testing / test (.ruby-version) (push) Has been cancelled
Ruby Testing / test (3.2) (push) Has been cancelled
Ruby Testing / test (3.3) (push) Has been cancelled
Ruby Testing / ImageMagick tests (.ruby-version) (push) Has been cancelled
Ruby Testing / ImageMagick tests (3.2) (push) Has been cancelled
Ruby Testing / ImageMagick tests (3.3) (push) Has been cancelled
Ruby Testing / End to End testing (.ruby-version) (push) Has been cancelled
Ruby Testing / End to End testing (3.2) (push) Has been cancelled
Ruby Testing / End to End testing (3.3) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (.ruby-version, docker.elastic.co/elasticsearch/elasticsearch:7.17.13) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (.ruby-version, docker.elastic.co/elasticsearch/elasticsearch:8.10.2) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (.ruby-version, opensearchproject/opensearch:2) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (3.2, docker.elastic.co/elasticsearch/elasticsearch:7.17.13) (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (3.3, docker.elastic.co/elasticsearch/elasticsearch:7.17.13) (push) Has been cancelled

This commit is contained in:
Matt Jankowski 2025-09-19 11:22:23 -04:00 committed by GitHub
parent f316cd51c8
commit 854aaec6fe
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -40,6 +40,23 @@ RSpec.describe Request do
end end
end end
describe '#initialize' do
subject { described_class.new(:get, url) }
context 'when URL has new lines' do
let(:url) { "https://host.example/image\nhttps://badhost.example/page.jpg" }
it 'encodes new lines in url value after normalization' do
expect(initialized_url_value)
.to eq('https://host.example/image%0Ahttps://badhost.example/page.jpg')
end
end
def initialized_url_value
subject.instance_variable_get(:@url).to_s
end
end
describe '#perform' do describe '#perform' do
context 'with valid host and non-persistent connection' do context 'with valid host and non-persistent connection' do
before { stub_request(:get, 'http://example.com').to_return(body: 'lorem ipsum') } before { stub_request(:get, 'http://example.com').to_return(body: 'lorem ipsum') }