Sha256: f977fa272582b851bc4ac00ab0ce3e413ec393cfb06df825af5c6ab0148a28dd

Contents?: true

Size: 756 Bytes

Versions: 1

Compression:

Stored size: 756 Bytes

Contents

require 'spec_helper'

describe RightOn::RoleModel do
  let(:admin_role) { RightOn::Role.create!(title: 'admin') }
  let(:product_right) { RightOn::Right.create!(name: 'Products', controller: 'products') }

  before do
    RightOn::Role.delete_all
    RightOn::Right.delete_all
    admin_role.rights << product_right
  end

  let(:basic_user) { User.create! }
  let(:admin) { User.create!(roles: [admin_role]) }

  it 'basic user should have no access' do
    expect(basic_user.rights).to be_empty
  end

  it 'admin user should have full access' do
    expect(admin.rights.size).to eq 1
  end

  it '#has_privileges_of?' do
    expect(admin.has_privileges_of?(basic_user)).to be true
    expect(basic_user.has_privileges_of?(admin)).to be false
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
right_on-0.3.0 spec/role_model_spec.rb