Account role spec
This commit is contained in:
parent
26afde94fd
commit
592412992d
|
@ -66,6 +66,10 @@ describe User do
|
||||||
it { should ensure_length_of(:bio).is_within(0..255) }
|
it { should ensure_length_of(:bio).is_within(0..255) }
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe 'modules' do
|
||||||
|
it { should include_module(Account) }
|
||||||
|
end
|
||||||
|
|
||||||
describe "Respond to" do
|
describe "Respond to" do
|
||||||
it { should respond_to(:is_admin?) }
|
it { should respond_to(:is_admin?) }
|
||||||
it { should respond_to(:identifier) }
|
it { should respond_to(:identifier) }
|
||||||
|
@ -115,16 +119,4 @@ describe User do
|
||||||
user.authentication_token.should_not be_blank
|
user.authentication_token.should_not be_blank
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
describe 'projects and namespaces' do
|
|
||||||
before do
|
|
||||||
ActiveRecord::Base.observers.enable(:user_observer)
|
|
||||||
@user = create :user
|
|
||||||
@project = create :project, namespace: @user.namespace
|
|
||||||
end
|
|
||||||
|
|
||||||
it { @user.authorized_projects.should include(@project) }
|
|
||||||
it { @user.my_own_projects.should include(@project) }
|
|
||||||
it { @user.several_namespaces?.should be_false }
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
44
spec/roles/account_role_spec.rb
Normal file
44
spec/roles/account_role_spec.rb
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
describe User, "Account" do
|
||||||
|
describe 'normal user' do
|
||||||
|
let(:user) { create(:user, name: 'John Smith') }
|
||||||
|
|
||||||
|
it { user.is_admin?.should be_false }
|
||||||
|
it { user.require_ssh_key?.should be_true }
|
||||||
|
it { user.can_create_group?.should be_false }
|
||||||
|
it { user.can_create_project?.should be_true }
|
||||||
|
it { user.first_name.should == 'John' }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe 'blocking user' do
|
||||||
|
let(:user) { create(:user, name: 'John Smith') }
|
||||||
|
|
||||||
|
it "should block user" do
|
||||||
|
user.block
|
||||||
|
user.blocked.should be_true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
describe 'projects' do
|
||||||
|
before do
|
||||||
|
ActiveRecord::Base.observers.enable(:user_observer)
|
||||||
|
@user = create :user
|
||||||
|
@project = create :project, namespace: @user.namespace
|
||||||
|
end
|
||||||
|
|
||||||
|
it { @user.authorized_projects.should include(@project) }
|
||||||
|
it { @user.my_own_projects.should include(@project) }
|
||||||
|
end
|
||||||
|
|
||||||
|
describe 'namespaced' do
|
||||||
|
before do
|
||||||
|
ActiveRecord::Base.observers.enable(:user_observer)
|
||||||
|
@user = create :user
|
||||||
|
@project = create :project, namespace: @user.namespace
|
||||||
|
end
|
||||||
|
|
||||||
|
it { @user.several_namespaces?.should be_false }
|
||||||
|
it { @user.namespaces.should == [@user.namespace] }
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in a new issue