Sha256: b082308e4bba5a02cc352702f8c0a514273390a39dd8cb02e039338ad47b96c6

Contents?: true

Size: 1.43 KB

Versions: 6

Compression:

Stored size: 1.43 KB

Contents

require 'test_helper'

class FilterTest < Minitest::Test
  class Subject; include GitHub::Ldap::Filter; end

  def setup
    @subject = Subject.new
    @me = 'uid=calavera,dc=github,dc=com'
  end

  def test_member_present
    assert_equal "(|(member=*)(uniqueMember=*))", @subject.member_filter.to_s
  end

  def test_member_equal
    assert_equal "(|(member=#{@me})(uniqueMember=#{@me}))", @subject.member_filter(@me).to_s
  end

  def test_groups_reduced
    assert_equal "(&(|(member=*)(uniqueMember=*))(|(cn=Enterprise)(cn=People)))",
      @subject.group_filter(%w(Enterprise People)).to_s
  end

  def test_groups_for_member
    assert_equal "(&(|(member=#{@me})(uniqueMember=#{@me}))(|(cn=Enterprise)(cn=People)))",
      @subject.group_filter(%w(Enterprise People), @me).to_s
  end

  def test_members_of_group
    assert_equal "(memberOf=cn=group,dc=github,dc=com)",
      @subject.members_of_group('cn=group,dc=github,dc=com').to_s

    assert_equal "(isMemberOf=cn=group,dc=github,dc=com)",
      @subject.members_of_group('cn=group,dc=github,dc=com', 'isMemberOf').to_s
  end

  def test_subgroups_of_group
    assert_equal "(&(memberOf=cn=group,dc=github,dc=com)#{Subject::ALL_GROUPS_FILTER})",
      @subject.subgroups_of_group('cn=group,dc=github,dc=com').to_s

    assert_equal "(&(isMemberOf=cn=group,dc=github,dc=com)#{Subject::ALL_GROUPS_FILTER})",
      @subject.subgroups_of_group('cn=group,dc=github,dc=com', 'isMemberOf').to_s
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
github-ldap-1.1.5 test/filter_test.rb
github-ldap-1.1.4 test/filter_test.rb
github-ldap-1.1.3 test/filter_test.rb
github-ldap-1.1.2 test/filter_test.rb
github-ldap-1.1.1 test/filter_test.rb
github-ldap-1.1.0 test/filter_test.rb