Commit 59c808a6 authored by Grzegorz Bizon's avatar Grzegorz Bizon

Add a test for container repository name regexp

parent 9f36012e
...@@ -28,6 +28,10 @@ module Gitlab ...@@ -28,6 +28,10 @@ module Gitlab
@container_repository_regex ||= %r{\A[a-z0-9]+(?:[-._/][a-z0-9]+)*\Z} @container_repository_regex ||= %r{\A[a-z0-9]+(?:[-._/][a-z0-9]+)*\Z}
end end
##
# We do not use regexp anchors here because these are not allowed when
# used as a routing constraint.
#
def container_registry_tag_regex def container_registry_tag_regex
@container_registry_tag_regex ||= /[\w][\w.-]{0,127}/ @container_registry_tag_regex ||= /[\w][\w.-]{0,127}/
end end
......
...@@ -38,4 +38,15 @@ describe Gitlab::Regex, lib: true do ...@@ -38,4 +38,15 @@ describe Gitlab::Regex, lib: true do
it { is_expected.not_to match('9foo') } it { is_expected.not_to match('9foo') }
it { is_expected.not_to match('foo-') } it { is_expected.not_to match('foo-') }
end end
describe '.container_repository_name_regex' do
subject { described_class.container_repository_name_regex }
it { is_expected.to match('image') }
it { is_expected.to match('my/image') }
it { is_expected.to match('my/awesome/image-1') }
it { is_expected.to match('my/awesome/image.test') }
it { is_expected.not_to match('.my/image') }
it { is_expected.not_to match('my/image.') }
end
end end
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment