Sha256: 22e609ef561feaa06429d8fede245b416328f0e111ab0b115ad45909b6c1e02a

Contents?: true

Size: 1.2 KB

Versions: 3

Compression:

Stored size: 1.2 KB

Contents

require_relative '../spec_helper'

require 'wright/util/user'

include Wright

describe Util::User do
  describe 'user_to_uid' do
    it 'should leave integer uids alone' do
      Util::User.user_to_uid(42).must_equal 42
    end

    it 'should convert user names to uids' do
      user = Etc.getpwent
      Util::User.user_to_uid(user.name).must_equal user.uid
    end
  end

  describe 'group_to_gid' do
    it 'should leave integer gids alone' do
      Util::User.group_to_gid(42).must_equal 42
    end

    it 'should convert group names to gids' do
      group = Etc.getgrent
      Util::User.group_to_gid(group.name).must_equal group.gid
    end
  end

  describe 'owner_to_owner_group' do
    it 'should return non-string owners unmodified' do
      Util::User.owner_to_owner_group(23).must_equal [23, nil]
    end

    it 'should convert owner strings to [owner, group] arrays' do
      Util::User.owner_to_owner_group('foo').must_equal ['foo', nil]
      Util::User.owner_to_owner_group('foo:bar').must_equal %w(foo bar)
    end

    it 'should raise exceptions for invalid owner strings' do
      lambda do
        Util::User.owner_to_owner_group('foo:bar:baz')
      end.must_raise ArgumentError
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
wright-0.1.2 spec/util/user_spec.rb
wright-0.1.1 spec/util/user_spec.rb
wright-0.1.0 spec/util/user_spec.rb