Sha256: 86247fd83e4f797729240ad00040a73d50800ecb697b484b33a05d35e4cf6239

Contents?: true

Size: 1.27 KB

Versions: 9

Compression:

Stored size: 1.27 KB

Contents

require_relative '../test_helper'

class GitHubLdapRecursiveMemberSearchTest < GitHub::Ldap::Test
  def setup
    @ldap     = GitHub::Ldap.new(options.merge(search_domains: %w(dc=github,dc=com)))
    @domain   = @ldap.domain("dc=github,dc=com")
    @entry     = @domain.user?('user1')
    @strategy = GitHub::Ldap::MemberSearch::Classic.new(@ldap)
  end

  def find_group(cn)
    @domain.groups([cn]).first
  end

  def test_finds_group_members
    members = @strategy.perform(find_group("nested-group1")).map(&:dn)
    assert_includes members, @entry.dn
  end

  def test_finds_nested_group_members
    members = @strategy.perform(find_group("n-depth-nested-group1")).map(&:dn)
    assert_includes members, @entry.dn
  end

  def test_finds_deeply_nested_group_members
    members = @strategy.perform(find_group("n-depth-nested-group9")).map(&:dn)
    assert_includes members, @entry.dn
  end

  def test_finds_posix_group_members
    members = @strategy.perform(find_group("posix-group1")).map(&:dn)
    assert_includes members, @entry.dn
  end

  def test_does_not_respect_configured_depth_limit
    strategy = GitHub::Ldap::MemberSearch::Classic.new(@ldap, depth: 2)
    members = strategy.perform(find_group("n-depth-nested-group9")).map(&:dn)
    assert_includes members, @entry.dn
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
github-ldap-1.10.1 test/member_search/classic_test.rb
github-ldap-1.10.0 test/member_search/classic_test.rb
github-ldap-1.9.0 test/member_search/classic_test.rb
github-ldap-1.8.2 test/member_search/classic_test.rb
github-ldap-1.8.1 test/member_search/classic_test.rb
github-ldap-1.8.0 test/member_search/classic_test.rb
github-ldap-1.7.1 test/member_search/classic_test.rb
github-ldap-1.7.0 test/member_search/classic_test.rb
github-ldap-1.6.0 test/member_search/classic_test.rb