Commit eb51a4ac authored by James Lopez's avatar James Lopez

refactor previous test and add validation to project model

parent 7ca67796
......@@ -34,12 +34,12 @@ module Gitlab
def project_path_regex
@project_path_regex ||= /\A[a-zA-Z0-9_.][a-zA-Z0-9_\-\.]*(?<!\.git)\z/.freeze
@project_path_regex ||= /\A[a-zA-Z0-9_.][a-zA-Z0-9_\-\.]*(?<!\.git|\.atom)\z/.freeze
end
def project_path_regex_message
"can contain only letters, digits, '_', '-' and '.'. " \
"Cannot start with '-' or end in '.git'" \
"Cannot start with '-', end in '.git' or end in '.atom'" \
end
......
......@@ -88,13 +88,10 @@ describe ProjectsController do
end
context "when the url contains .atom" do
let(:public_project_with_dot) { create(:project, :public, name: 'my.atom', path: 'my.atom') }
let(:public_project_with_dot_atom) { create(:project, :public, name: 'my.atom', path: 'my.atom') }
it 'loads a project' do
get :show, namespace_id: public_project_with_dot.namespace.path, id: public_project_with_dot.path
expect(assigns(:project)).to eq(public_project_with_dot)
expect(response.status).to eq(200)
it 'expect an error creating the project' do
expect { public_project_with_dot_atom }.to raise_error(ActiveRecord::RecordInvalid)
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