diff --git a/src/Microsoft.SqlTools.ServiceLayer/Connection/Contracts/ConnectionDetails.cs b/src/Microsoft.SqlTools.ServiceLayer/Connection/Contracts/ConnectionDetails.cs
index 9a9ac0c9..56972809 100644
--- a/src/Microsoft.SqlTools.ServiceLayer/Connection/Contracts/ConnectionDetails.cs
+++ b/src/Microsoft.SqlTools.ServiceLayer/Connection/Contracts/ConnectionDetails.cs
@@ -150,15 +150,15 @@ namespace Microsoft.SqlTools.ServiceLayer.Connection.Contracts
/// Gets or sets a value that indicates encryption mode that SQL Server should use to perform SSL encryption for all the data sent between the client and server. Supported values are: Optional, Mandatory, Strict, True, False, Yes and No.
/// Boolean 'true' and 'false' will also continue to be supported for backwards compatibility.
///
- public string Encrypt
+ public string? Encrypt
{
get
{
- string value = GetOptionValue("encrypt");
+ string? value = GetOptionValue("encrypt");
if(string.IsNullOrEmpty(value))
{
// Accept boolean values for backwards compatibility.
- value = GetOptionValue("encrypt").ToString();
+ value = GetOptionValue("encrypt")?.ToString();
}
return value;
}
diff --git a/test/Microsoft.SqlTools.ServiceLayer.UnitTests/Connection/ConnectionDetailsTests.cs b/test/Microsoft.SqlTools.ServiceLayer.UnitTests/Connection/ConnectionDetailsTests.cs
index ba68753c..0387d7f8 100644
--- a/test/Microsoft.SqlTools.ServiceLayer.UnitTests/Connection/ConnectionDetailsTests.cs
+++ b/test/Microsoft.SqlTools.ServiceLayer.UnitTests/Connection/ConnectionDetailsTests.cs
@@ -25,7 +25,6 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
var expectedForStrings = default(string);
var expectedForInt = default(int?);
var expectedForBoolean = default(bool?);
- var expectedEncryptOption = default(string?);
Assert.AreEqual(details.ApplicationIntent, expectedForStrings);
Assert.AreEqual(details.ApplicationName, expectedForStrings);
@@ -49,7 +48,7 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
Assert.AreEqual(details.ColumnEncryptionSetting, expectedForStrings);
Assert.AreEqual(details.EnclaveAttestationUrl, expectedForStrings);
Assert.AreEqual(details.EnclaveAttestationProtocol, expectedForStrings);
- Assert.AreEqual(details.Encrypt, expectedEncryptOption);
+ Assert.AreEqual(details.Encrypt, expectedForStrings);
Assert.AreEqual(details.MultipleActiveResultSets, expectedForBoolean);
Assert.AreEqual(details.MultiSubnetFailover, expectedForBoolean);
Assert.AreEqual(details.PersistSecurityInfo, expectedForBoolean);
@@ -242,7 +241,7 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
}
[Test]
- public void EncryptShouldReturnMandatoryIfNotSet()
+ public void EncryptShouldReturnNullIfNotSet()
{
ConnectionDetails details = new ConnectionDetails();
Assert.That(details.Encrypt, Is.Null, "Encrypt should be null when set to null");