Commit 503244eb authored by Douwe Maan's avatar Douwe Maan

Fix specs

parent 31266c5b
...@@ -17,7 +17,6 @@ class AddVisibilityLevelToGroups < ActiveRecord::Migration ...@@ -17,7 +17,6 @@ class AddVisibilityLevelToGroups < ActiveRecord::Migration
private private
def allowed_visibility_level def allowed_visibility_level
return 20
application_settings = select_one("SELECT restricted_visibility_levels FROM application_settings ORDER BY id DESC LIMIT 1") application_settings = select_one("SELECT restricted_visibility_levels FROM application_settings ORDER BY id DESC LIMIT 1")
if application_settings if application_settings
restricted_visibility_levels = YAML.safe_load(application_settings["restricted_visibility_levels"]) rescue nil restricted_visibility_levels = YAML.safe_load(application_settings["restricted_visibility_levels"]) rescue nil
......
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
class AddDefaultGroupVisibilityToApplicationSettings < ActiveRecord::Migration class AddDefaultGroupVisibilityToApplicationSettings < ActiveRecord::Migration
def up def up
add_column :application_settings, :default_group_visibility, :integer add_column :application_settings, :default_group_visibility, :integer
# Unfortunately, this can't be a `default`, since we don't want the configuration specific
# `allowed_visibility_level` to end up in schema.rb
execute("UPDATE application_settings SET default_group_visibility = #{allowed_visibility_level}") execute("UPDATE application_settings SET default_group_visibility = #{allowed_visibility_level}")
end end
......
...@@ -26,33 +26,34 @@ describe JoinedGroupsFinder do ...@@ -26,33 +26,34 @@ describe JoinedGroupsFinder do
context "with a user" do context "with a user" do
before do before do
private_group.add_master(profile_owner) private_group.add_master(profile_owner)
private_group.add_developer(profile_visitor)
internal_group.add_master(profile_owner) internal_group.add_master(profile_owner)
public_group.add_master(profile_owner) public_group.add_master(profile_owner)
end end
context "when the profile visitor is in the private group" do
before do
private_group.add_developer(profile_visitor)
end
it 'only shows groups where both users are authorized to see' do it 'only shows groups where both users are authorized to see' do
expect(finder.execute(profile_visitor)).to eq([public_group, internal_group, private_group]) expect(finder.execute(profile_visitor)).to eq([public_group, internal_group, private_group])
end end
end
context 'if profile visitor is in one of its projects' do context 'if profile visitor is in one of the private group projects' do
before do before do
public_group.add_master(profile_owner)
private_group.add_master(profile_owner)
project = create(:project, :private, group: private_group, name: 'B', path: 'B') project = create(:project, :private, group: private_group, name: 'B', path: 'B')
project.team.add_developer(profile_visitor) project.team.add_user(profile_visitor, Gitlab::Access::DEVELOPER)
end end
it 'shows group' do it 'shows group' do
expect(finder.execute(profile_visitor)).to eq([public_group, private_group]) expect(finder.execute(profile_visitor)).to eq([public_group, internal_group, private_group])
end end
end end
context 'external users' do context 'external users' do
before do before do
profile_visitor.update_attributes(external: true) profile_visitor.update_attributes(external: true)
public_group.add_master(profile_owner)
internal_group.add_master(profile_owner)
end end
context 'if not a member' do context 'if not a member' do
......
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