Sha256: bcd1f5809837c3b425f52c9479bd893d37d3ddd06e534e1c644bf7dea6117688

Contents?: true

Size: 1.15 KB

Versions: 2

Compression:

Stored size: 1.15 KB

Contents

require 'spec_helper'

require 'conjur/api'

describe Conjur::User do
  context "#new" do
    let(:login) { 'the-login' }
    let(:api_key) { 'the-api-key' }
    let(:credentials) { { user: login, password: api_key } }
    let(:user) { Conjur::User.new(login, credentials)}
    describe "attributes" do
      subject { user }
      its(:id) { should == login }
      its(:login) { should == login }
      its(:roleid) { should == ["user", login].join(':') }
      its(:resource_id) { should == login }
      its(:resource_kind) { should == "user" }
      its(:options) { should == credentials }
    end
    before {
      Conjur.stub(:account).and_return 'ci'
    }
    it "connects to a Resource" do
      require 'conjur/resource'
      Conjur::Resource.should_receive(:new).with(Conjur::Authz::API.host, credentials).and_return resource = double(:resource)
      resource.should_receive(:[]).with("ci/resources/user/the-login")
      
      user.resource
    end
    it "connects to a Role" do
      require 'conjur/role'
      Conjur::Role.should_receive(:new).with("#{Conjur::Authz::API.host}/roles/#{user.roleid}", credentials)
      
      user.role
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
conjur-api-2.1.1 spec/lib/user_spec.rb
conjur-api-2.1.0 spec/lib/user_spec.rb