Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
heptapod
heptapod
Commits
1ee6e9f9d118
Commit
1ee6e9f9
authored
May 14, 2019
by
Peter Marko
Browse files
Fix project visibility level validation
parent
7d2b930a43e9
Changes
3
Hide whitespace changes
Inline
Side-by-side
app/models/project.rb
View file @
1ee6e9f9
...
...
@@ -336,8 +336,8 @@
validates
:star_count
,
numericality:
{
greater_than_or_equal_to:
0
}
validate
:check_personal_projects_limit
,
on: :create
validate
:check_repository_path_availability
,
on: :update
,
if:
->
(
project
)
{
project
.
renamed?
}
validate
:visibility_level_allowed_by_group
,
if:
->
{
changes
.
has_key?
(
:
visibility_level
)
}
validate
:visibility_level_allowed_as_fork
,
if:
->
{
changes
.
has_key?
(
:
visibility_level
)
}
validate
:visibility_level_allowed_by_group
,
if:
:should_validate_
visibility_level
?
validate
:visibility_level_allowed_as_fork
,
if:
:should_validate_
visibility_level
?
validate
:check_wiki_path_conflict
validate
:validate_pages_https_only
,
if:
->
{
changes
.
has_key?
(
:pages_https_only
)
}
validates
:repository_storage
,
...
...
@@ -891,6 +891,10 @@
self
.
errors
.
add
(
:limit_reached
,
error
%
{
limit:
limit
})
end
def
should_validate_visibility_level?
new_record?
||
changes
.
has_key?
(
:visibility_level
)
end
def
visibility_level_allowed_by_group
return
if
visibility_level_allowed_by_group?
...
...
changelogs/unreleased/fix-project-visibility-level-validation.yml
0 → 100644
View file @
1ee6e9f9
---
title
:
Fix project visibility level validation
merge_request
:
28305
author
:
Peter Marko
type
:
fixed
spec/models/project_spec.rb
View file @
1ee6e9f9
...
...
@@ -214,6 +214,13 @@
expect
(
project2
).
not_to
be_valid
end
it
'validates the visibility'
do
expect_any_instance_of
(
described_class
).
to
receive
(
:visibility_level_allowed_as_fork
).
and_call_original
expect_any_instance_of
(
described_class
).
to
receive
(
:visibility_level_allowed_by_group
).
and_call_original
create
(
:project
)
end
describe
'wiki path conflict'
do
context
"when the new path has been used by the wiki of other Project"
do
it
'has an error on the name attribute'
do
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment