FIX: any subcategory permissions are valid if everyone has access to parent category ()

This commit is contained in:
Maja Komel 2019-03-04 04:49:26 +01:00 committed by Sam
parent bb39a6f7d7
commit fea5d4f3ec
2 changed files with 7 additions and 4 deletions
app/models
spec/models

@ -658,6 +658,9 @@ class Category < ActiveRecord::Base
def check_permissions_compatibility(parent_permissions, child_permissions)
parent_groups = parent_permissions.map(&:first)
return if parent_groups.include?(Group[:everyone].id)
child_groups = child_permissions.map(&:first)
only_in_subcategory = child_groups - parent_groups

@ -779,8 +779,8 @@ describe Category do
expect(subcategory.valid?).to eq(true)
end
it "is valid if no permissions are set on parent" do
parent_category.set_permissions(everyone: :full)
it "is valid if everyone has access to parent category" do
parent_category.set_permissions(everyone: :readonly)
parent_category.save!
subcategory.set_permissions(group => :create_post, group2 => :create_post)
@ -814,10 +814,10 @@ describe Category do
end
it "is valid if no permissions set on parent" do
it "is valid if everyone has access to parent category" do
subcategory.set_permissions(group => :create_post)
subcategory.save
parent_category.set_permissions(everyone: :full)
parent_category.set_permissions(everyone: :readonly)
expect(parent_category.valid?).to eq(true)
end