From fcfa833d473b2b74c147cbe2615f3de58a048064 Mon Sep 17 00:00:00 2001 From: Tarek Mahmoud Sayed Date: Mon, 18 Sep 2017 17:45:54 -0700 Subject: [PATCH] Fix instantiating PrincipleContext with Domain type (dotnet/corefx#24122) * Fix instantiating PrincipleContext with Domain type * Enhancement Commit migrated from https://github.com/dotnet/corefx/commit/adde5513211d944e937449d01f45a823ebd2a469 --- .../tests/PrincipalContextTests.cs | 6 +++++- .../DirectoryServices/Protocols/common/SearchResults.cs | 5 +++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/libraries/System.DirectoryServices.AccountManagement/tests/PrincipalContextTests.cs b/src/libraries/System.DirectoryServices.AccountManagement/tests/PrincipalContextTests.cs index 3f12128f75609..bf67a3c0591e7 100644 --- a/src/libraries/System.DirectoryServices.AccountManagement/tests/PrincipalContextTests.cs +++ b/src/libraries/System.DirectoryServices.AccountManagement/tests/PrincipalContextTests.cs @@ -170,7 +170,11 @@ public void Ctor_InvalidContexType_ThrowsInvalidEnumArgumentException(ContextTyp [Fact] public void Ctor_DomainContextType_ThrowsPrincipalServerDownException() { - Assert.Throws(() => new PrincipalContext(ContextType.Domain)); + if (Environment.MachineName.Equals(Environment.UserDomainName, StringComparison.OrdinalIgnoreCase)) + { + // The machine is not connected to a domain. we expect PrincipalContext(ContextType.Domain) to throw + Assert.Throws(() => new PrincipalContext(ContextType.Domain)); + } } [Fact] diff --git a/src/libraries/System.DirectoryServices.Protocols/src/System/DirectoryServices/Protocols/common/SearchResults.cs b/src/libraries/System.DirectoryServices.Protocols/src/System/DirectoryServices/Protocols/common/SearchResults.cs index 9edcb9389bc70..7c811207178e6 100644 --- a/src/libraries/System.DirectoryServices.Protocols/src/System/DirectoryServices/Protocols/common/SearchResults.cs +++ b/src/libraries/System.DirectoryServices.Protocols/src/System/DirectoryServices/Protocols/common/SearchResults.cs @@ -72,10 +72,11 @@ public class SearchResultEntry { private DirectoryControl[] _resultControls = null; - internal SearchResultEntry(string dn) => DistinguishedName = dn; + internal SearchResultEntry(string dn) : this(dn, new SearchResultAttributeCollection()) {} - internal SearchResultEntry(string dn, SearchResultAttributeCollection attrs) : this(dn) + internal SearchResultEntry(string dn, SearchResultAttributeCollection attrs) { + DistinguishedName = dn; Attributes = attrs; }