Sha256: e6895bff3d13d00d8d10da626be9082a7167fcfd7ff0aaa2f6a56c001a0b3eea

Contents?: true

Size: 859 Bytes

Versions: 3

Compression:

Stored size: 859 Bytes

Contents

require 'spec_helper'

RSpec.describe Slack::Web::Api::Mixins::Users do
  let(:klass) do
    Class.new do
      include Slack::Web::Api::Mixins::Users
    end
  end
  subject do
    klass.new
  end
  before do
    allow(subject).to receive(:users_list).and_return(
      'members' => [{
        'id' => 'UDEADBEEF',
        'name' => 'aws'
      }]
    )
  end
  context '#users_id' do
    it 'leaves users specified by ID alone' do
      expect(subject.users_id(user: 'U123456')).to eq('ok' => true, 'user' => { 'id' => 'U123456' })
    end
    it 'translates a user that starts with a #' do
      expect(subject.users_id(user: '@aws')).to eq('ok' => true, 'user' => { 'id' => 'UDEADBEEF' })
    end
    it 'fails with an exception' do
      expect { subject.users_id(user: '@foo') }.to raise_error Slack::Web::Api::Error, 'user_not_found'
    end
  end
end

Version data entries

3 entries across 3 versions & 2 rubygems

Version Path
slack-ruby-client-bhe-0.5.5 spec/slack/web/api/mixins/users_spec.rb
slack-ruby-client-bhe-0.5.4 spec/slack/web/api/mixins/users_spec.rb
slack-ruby-client-0.5.4 spec/slack/web/api/mixins/users_spec.rb