diff --git a/src/Tests/MicrosoftDataSqlClientVersionTests.cs b/src/Tests/MicrosoftDataSqlClientVersionTests.cs new file mode 100644 index 0000000..b50006e --- /dev/null +++ b/src/Tests/MicrosoftDataSqlClientVersionTests.cs @@ -0,0 +1,32 @@ +using System.Reflection; +using Shouldly; +using Xunit; + +namespace DbUp.SqlServer.Tests; + +public class MicrosoftDataSqlClientVersionTests +{ + [Fact] + public void Microsoft_Data_SqlClient_Is_Lowest_Supported_Lts() + { + var assembly = typeof(Microsoft.Data.SqlClient.SqlConnection).Assembly; + var version = assembly.GetCustomAttribute(); + + // https://learn.microsoft.com/en-us/sql/connect/ado-net/sqlclient-driver-support-lifecycle + version.ShouldNotBeNull(); + version.InformationalVersion.ShouldStartWith("6.1.", customMessage: "We want to stay on 6.1.x as it is the lowest LTS version which is in support (ends 14 Aug, 2028)"); + } + + [Fact] + public void Microsoft_Data_SqlClient_Is_In_Support() + { + // Arrange + var supportEndDate = new DateTime(2028, 8, 14); + var currentDate = DateTime.UtcNow; + + // Assert + currentDate.ShouldBeLessThanOrEqualTo(supportEndDate, + $"Microsoft.Data.SqlClient 6.1.x support ends on {supportEndDate:yyyy-MM-dd}. " + + $"Current date is {currentDate:yyyy-MM-dd}. We should upgrade to the latest lowest lts https://learn.microsoft.com/en-us/sql/connect/ado-net/sqlclient-driver-support-lifecycle."); + } +} diff --git a/src/dbup-sqlserver/dbup-sqlserver.csproj b/src/dbup-sqlserver/dbup-sqlserver.csproj index 6d49d6c..58f3f98 100644 --- a/src/dbup-sqlserver/dbup-sqlserver.csproj +++ b/src/dbup-sqlserver/dbup-sqlserver.csproj @@ -25,7 +25,7 @@ - +