Sha256: 11b5ba7752c1e6e19f1d0d426144e20d4f567fc3f94c09579cb9b1a42f7b3444

Contents?: true

Size: 1.12 KB

Versions: 21

Compression:

Stored size: 1.12 KB

Contents

require 'spec_helper'

describe Role do
  let :admin_user      do FactoryGirl.create(:admin) end

  describe "class methods" do
    before do
      admin_user
    end

    describe "for" do
      context 'admin' do
        subject(:role){Role.for(admin_user) }
        it { is_expected.to be_a(Role::Admin) }
        it { expect(role.user).to eq(admin_user) }
      end
    end

    describe "find by scope" do

      context 'admin' do
        subject(:role){Role::Admin.users }
        it { expect(role.count).to eq(2) }
        it { expect(role.last).to eq(admin_user) }
      end
    end
  end

  describe "initialization and attachment" do

    it "should attach a AdminRole to the researcher user" do
      expect(admin_user.role).to be_a(Role::Admin)
    end

    it "should attach the user to the role" do

      # Below should be expanded when future user types are added.
      # I left it as an array of one on purpose.  -ED
      [ admin_user ].each do |user|
        expect(user.role.user).to eq(user)
      end
    end

    it "should return its role name" do
      expect(admin_user.role.role_name).to eq('Admin')
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
xing-framework-1.0.0.pre.beta.1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-1.0.0.pre.beta default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-1.0.0.pre.alpha default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.3.2 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.3.1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.3.0 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.9 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.9.beta1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.8 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.8.beta1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.7 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.7.pre.beta1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.6 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.5 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.4 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.3 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.2 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.1 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.2.0 default_configuration/base_app/backend/spec/models/role_spec.rb
xing-framework-0.0.3 default_configuration/base_app/backend/spec/models/role_spec.rb