mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-01-31 17:24:37 -05:00
Update Microsoft.Data.SqlClient to v5.0.1 (#1708)
This commit is contained in:
@@ -25,6 +25,7 @@ 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);
|
||||
@@ -48,13 +49,14 @@ 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, expectedForBoolean);
|
||||
Assert.AreEqual(details.Encrypt, expectedEncryptOption);
|
||||
Assert.AreEqual(details.MultipleActiveResultSets, expectedForBoolean);
|
||||
Assert.AreEqual(details.MultiSubnetFailover, expectedForBoolean);
|
||||
Assert.AreEqual(details.PersistSecurityInfo, expectedForBoolean);
|
||||
Assert.AreEqual(details.Pooling, expectedForBoolean);
|
||||
Assert.AreEqual(details.Replication, expectedForBoolean);
|
||||
Assert.AreEqual(details.TrustServerCertificate, expectedForBoolean);
|
||||
Assert.AreEqual(details.HostNameInCertificate, expectedForStrings);
|
||||
Assert.AreEqual(details.Port, expectedForInt);
|
||||
}
|
||||
|
||||
@@ -88,13 +90,14 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
details.ColumnEncryptionSetting = expectedForStrings + index++;
|
||||
details.EnclaveAttestationProtocol = expectedForStrings + index++;
|
||||
details.EnclaveAttestationUrl = expectedForStrings + index++;
|
||||
details.Encrypt = (index++ % 2 == 0);
|
||||
details.Encrypt = expectedForStrings + index++;
|
||||
details.MultipleActiveResultSets = (index++ % 2 == 0);
|
||||
details.MultiSubnetFailover = (index++ % 2 == 0);
|
||||
details.PersistSecurityInfo = (index++ % 2 == 0);
|
||||
details.Pooling = (index++ % 2 == 0);
|
||||
details.Replication = (index++ % 2 == 0);
|
||||
details.TrustServerCertificate = (index++ % 2 == 0);
|
||||
details.HostNameInCertificate = expectedForStrings + index++;
|
||||
details.Port = expectedForInt + index++;
|
||||
|
||||
index = 0;
|
||||
@@ -120,13 +123,14 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
Assert.AreEqual(details.ColumnEncryptionSetting, expectedForStrings + index++);
|
||||
Assert.AreEqual(details.EnclaveAttestationProtocol, expectedForStrings + index++);
|
||||
Assert.AreEqual(details.EnclaveAttestationUrl, expectedForStrings + index++);
|
||||
Assert.AreEqual(details.Encrypt, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.Encrypt, expectedForStrings + index++);
|
||||
Assert.AreEqual(details.MultipleActiveResultSets, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.MultiSubnetFailover, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.PersistSecurityInfo, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.Pooling, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.Replication, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.TrustServerCertificate, (index++ % 2 == 0));
|
||||
Assert.AreEqual(details.HostNameInCertificate, expectedForStrings + index++);
|
||||
Assert.AreEqual(details.Port, (expectedForInt + index++));
|
||||
}
|
||||
|
||||
@@ -161,16 +165,17 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
details.ColumnEncryptionSetting = expectedForStrings + index++;
|
||||
details.EnclaveAttestationProtocol = expectedForStrings + index++;
|
||||
details.EnclaveAttestationUrl = expectedForStrings + index++;
|
||||
details.Encrypt = (index++ % 2 == 0);
|
||||
details.Encrypt = expectedForStrings + index++;
|
||||
details.MultipleActiveResultSets = (index++ % 2 == 0);
|
||||
details.MultiSubnetFailover = (index++ % 2 == 0);
|
||||
details.PersistSecurityInfo = (index++ % 2 == 0);
|
||||
details.Pooling = (index++ % 2 == 0);
|
||||
details.Replication = (index++ % 2 == 0);
|
||||
details.TrustServerCertificate = (index++ % 2 == 0);
|
||||
details.HostNameInCertificate = expectedForStrings + index++;
|
||||
details.Port = expectedForInt + index++;
|
||||
|
||||
if(optionMetadata.Options.Count() != details.Options.Count)
|
||||
if (optionMetadata.Options.Count() != details.Options.Count)
|
||||
{
|
||||
var optionsNotInMetadata = details.Options.Where(o => !optionMetadata.Options.Any(m => m.Name == o.Key));
|
||||
var optionNames = optionsNotInMetadata.Any() ? optionsNotInMetadata.Select(s => s.Key).Aggregate((i, j) => i + "," + j) : null;
|
||||
@@ -180,7 +185,7 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
{
|
||||
var metadata = optionMetadata.Options.FirstOrDefault(x => x.Name == option.Key);
|
||||
Assert.NotNull(metadata);
|
||||
if(metadata.ValueType == ConnectionOption.ValueTypeString)
|
||||
if (metadata.ValueType == ConnectionOption.ValueTypeString)
|
||||
{
|
||||
Assert.True(option.Value is string);
|
||||
}
|
||||
@@ -200,7 +205,7 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
public void SettingConnectiomTimeoutToLongShouldStillReturnInt()
|
||||
{
|
||||
ConnectionDetails details = new ConnectionDetails();
|
||||
|
||||
|
||||
long timeout = 30;
|
||||
int? expectedValue = 30;
|
||||
details.Options["connectTimeout"] = timeout;
|
||||
@@ -226,44 +231,21 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void SettingEncryptToStringShouldStillReturnBoolean()
|
||||
public void SettingEncrypShouldReturnExpectedEncryptOption()
|
||||
{
|
||||
ConnectionDetails details = new ConnectionDetails();
|
||||
details.Options["Encrypt"] = true.ToString();
|
||||
Assert.That(details.Encrypt, Is.EqualTo(true.ToString()), "Encrypt should be Mandatory.");
|
||||
|
||||
string encrypt = "True";
|
||||
bool? expectedValue = true;
|
||||
details.Options["encrypt"] = encrypt;
|
||||
|
||||
Assert.AreEqual(details.Encrypt, expectedValue);
|
||||
details.Options["Encrypt"] = "Strict";
|
||||
Assert.That(details.Encrypt, Is.EqualTo("Strict"), "Encrypt should be Strict.");
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void SettingEncryptToLowecaseStringShouldStillReturnBoolean()
|
||||
public void EncryptShouldReturnMandatoryIfNotSet()
|
||||
{
|
||||
ConnectionDetails details = new ConnectionDetails();
|
||||
|
||||
string encrypt = "true";
|
||||
bool? expectedValue = true;
|
||||
details.Options["encrypt"] = encrypt;
|
||||
|
||||
Assert.AreEqual(details.Encrypt, expectedValue);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void EncryptShouldReturnNullIfNotSet()
|
||||
{
|
||||
ConnectionDetails details = new ConnectionDetails();
|
||||
bool? expectedValue = null;
|
||||
Assert.AreEqual(details.Encrypt, expectedValue);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void EncryptShouldReturnNullIfSetToNull()
|
||||
{
|
||||
ConnectionDetails details = new ConnectionDetails();
|
||||
details.Options["encrypt"] = null;
|
||||
int? expectedValue = null;
|
||||
Assert.AreEqual(details.ConnectTimeout, expectedValue);
|
||||
Assert.That(details.Encrypt, Is.Null, "Encrypt should be null when set to null");
|
||||
}
|
||||
|
||||
[Test]
|
||||
@@ -273,11 +255,12 @@ namespace Microsoft.SqlTools.ServiceLayer.UnitTests.Connection
|
||||
|
||||
long timeout = long.MaxValue;
|
||||
int? expectedValue = null;
|
||||
string? expectedEncryptValue = "Mandatory";
|
||||
details.Options["connectTimeout"] = timeout;
|
||||
details.Options["encrypt"] = true;
|
||||
details.Options["encrypt"] = expectedEncryptValue;
|
||||
|
||||
Assert.AreEqual(details.ConnectTimeout, expectedValue);
|
||||
Assert.AreEqual(true, details.Encrypt);
|
||||
Assert.That(details.ConnectTimeout, Is.EqualTo(expectedValue), "Connect Timeout not as expected");
|
||||
Assert.That(details.Encrypt, Is.EqualTo("Mandatory"), "Encrypt should be mandatory.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user