diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 16:16:36 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-11-18 16:16:36 +0300 |
commit | 311b0269b4eb9839fa63f80c8d7a58f32b8138a0 (patch) | |
tree | 07e7870bca8aed6d61fdcc810731c50d2c40af47 /spec/validators | |
parent | 27909cef6c4170ed9205afa7426b8d3de47cbb0c (diff) |
Add latest changes from gitlab-org/gitlab@14-5-stable-eev14.5.0-rc42
Diffstat (limited to 'spec/validators')
-rw-r--r-- | spec/validators/addressable_url_validator_spec.rb | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/spec/validators/addressable_url_validator_spec.rb b/spec/validators/addressable_url_validator_spec.rb index ec3ee9aa500..7e2cc2afa8a 100644 --- a/spec/validators/addressable_url_validator_spec.rb +++ b/spec/validators/addressable_url_validator_spec.rb @@ -14,6 +14,7 @@ RSpec.describe AddressableUrlValidator do describe 'validations' do include_context 'invalid urls' + include_context 'valid urls with CRLF' let(:validator) { described_class.new(attributes: [:link_url]) } @@ -27,9 +28,20 @@ RSpec.describe AddressableUrlValidator do expect(badge.errors.added?(:link_url, validator.options.fetch(:message))).to be true end + it 'allows urls with encoded CR or LF characters' do + aggregate_failures do + valid_urls_with_CRLF.each do |url| + validator.validate_each(badge, :link_url, url) + + expect(badge.errors).to be_empty + end + end + end + it 'does not allow urls with CR or LF characters' do aggregate_failures do urls_with_CRLF.each do |url| + badge = build(:badge, link_url: 'http://www.example.com') validator.validate_each(badge, :link_url, url) expect(badge.errors.added?(:link_url, 'is blocked: URI is invalid')).to be true |