From 68a225c0d18b72431300a24f67ed80ea008843f6 Mon Sep 17 00:00:00 2001 From: David Funk Date: Thu, 16 Mar 2023 10:41:43 +0100 Subject: [PATCH] update to .net7 --- .../FirebirdSql.Data.FirebirdClient.csproj | 4 +- ...meworkCore.Firebird.FunctionalTests.csproj | 6 +- .../MigrationsFbTest.cs | 8 +- .../Query/ComplexNavigationsQueryFbTest.cs | 18 ---- .../Query/FromSqlQueryFbTest.cs | 82 +++++++++---------- .../TestUtilities/FbTestHelpers.cs | 4 +- .../UpdatesFbFixture.cs | 2 +- ....EntityFrameworkCore.Firebird.Tests.csproj | 2 +- ...irdSql.EntityFrameworkCore.Firebird.csproj | 6 +- .../Update/Internal/FbUpdateSqlGenerator.cs | 8 +- src/Scratchpad/Scratchpad.csproj | 2 +- 11 files changed, 57 insertions(+), 85 deletions(-) diff --git a/src/FirebirdSql.Data.FirebirdClient/FirebirdSql.Data.FirebirdClient.csproj b/src/FirebirdSql.Data.FirebirdClient/FirebirdSql.Data.FirebirdClient.csproj index 173c08203..83901ff03 100644 --- a/src/FirebirdSql.Data.FirebirdClient/FirebirdSql.Data.FirebirdClient.csproj +++ b/src/FirebirdSql.Data.FirebirdClient/FirebirdSql.Data.FirebirdClient.csproj @@ -1,6 +1,6 @@  - net48;netstandard2.0;netstandard2.1;net5.0;net6.0 + net48;netstandard2.0;netstandard2.1;net5.0;net6.0;net7.0 FirebirdSql.Data.FirebirdClient FirebirdSql.Data true @@ -51,6 +51,8 @@ + + all diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests.csproj b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests.csproj index adfa01776..68351c018 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests.csproj +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests.csproj @@ -1,6 +1,6 @@  - net6.0 + net7.0 false false true @@ -10,8 +10,8 @@ ..\FirebirdSql.Data.TestsBase\FirebirdSql.Data.TestsBase.snk - - + + all diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/MigrationsFbTest.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/MigrationsFbTest.cs index b78f4ba9e..1110c7b9a 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/MigrationsFbTest.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/MigrationsFbTest.cs @@ -204,18 +204,12 @@ public MigrationsFbTest(MigrationsFbFixture fixture) [Fact(Skip = SkipReason)] public override Task Rename_index() => base.Rename_index(); - [Fact(Skip = SkipReason)] - public override Task Add_primary_key() => base.Add_primary_key(); - [Fact(Skip = SkipReason)] public override Task Add_primary_key_with_name() => base.Add_primary_key_with_name(); [Fact(Skip = SkipReason)] public override Task Add_primary_key_composite_with_name() => base.Add_primary_key_composite_with_name(); - [Fact(Skip = SkipReason)] - public override Task Drop_primary_key() => base.Drop_primary_key(); - [Fact(Skip = SkipReason)] public override Task Add_foreign_key() => base.Add_foreign_key(); @@ -300,7 +294,7 @@ public class MigrationsFbFixture : MigrationsFixtureBase protected override ITestStoreFactory TestStoreFactory => FbTestStoreFactory.Instance; - public override TestHelpers TestHelpers => FbTestHelpers.Instance; + public override RelationalTestHelpers TestHelpers => FbTestHelpers.Instance; protected override IServiceCollection AddServices(IServiceCollection serviceCollection) #pragma warning disable EF1001 diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/ComplexNavigationsQueryFbTest.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/ComplexNavigationsQueryFbTest.cs index 2187308b4..4efa9e807 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/ComplexNavigationsQueryFbTest.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/ComplexNavigationsQueryFbTest.cs @@ -557,12 +557,6 @@ public override Task GroupJoin_with_complex_subquery_with_joins_does_not_get_fla return base.GroupJoin_with_complex_subquery_with_joins_does_not_get_flattened3(isAsync); } - [GeneratedNameTooLongFact] - public override void Include18() - { - base.Include18(); - } - [GeneratedNameTooLongTheory] [MemberData(nameof(IsAsyncData))] public override Task Include18_1_1(bool isAsync) @@ -570,12 +564,6 @@ public override Task Include18_1_1(bool isAsync) return base.Include18_1_1(isAsync); } - [GeneratedNameTooLongFact] - public override void Include19() - { - base.Include19(); - } - [GeneratedNameTooLongTheory] [MemberData(nameof(IsAsyncData))] public override Task Join_navigation_deeply_nested_non_key_join(bool isAsync) @@ -695,12 +683,6 @@ public override Task Include_reference_with_groupby_in_subquery(bool async) return base.Include_reference_with_groupby_in_subquery(async); } - [GeneratedNameTooLongTheory] - [MemberData(nameof(IsAsyncData))] - public override Task Project_shadow_properties(bool async) - { - return base.Project_shadow_properties(async); - } [NotSupportedOnFirebirdTheory] [MemberData(nameof(IsAsyncData))] public override Task SelectMany_with_outside_reference_to_joined_table_correctly_translated_to_apply(bool isAsync) diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/FromSqlQueryFbTest.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/FromSqlQueryFbTest.cs index 36830eb32..86f6ed501 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/FromSqlQueryFbTest.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/Query/FromSqlQueryFbTest.cs @@ -81,47 +81,47 @@ public override async Task FromSql_Count_used_twice_with_parameters(bool async) : query.Count() > 0; } - [Theory] - [MemberData(nameof(IsAsyncData))] - public override async Task FromSql_used_twice_without_parameters(bool async) - { - using var context = CreateContext(); - - var query = context.Set() - .FromSqlRaw(NormalizeDelimitersInRawString("SELECT 'ALFKI' AS [CustomerID] FROM RDB$DATABASE")) - .IgnoreQueryFilters(); - - var result1 = async - ? await query.AnyAsync() - : query.Any(); - - Assert.Equal( - RelationalStrings.QueryFromSqlInsideExists, - async - ? (await Assert.ThrowsAsync(() => query.AnyAsync())).Message - : Assert.Throws(() => query.Any()).Message); - } - - [Theory] - [MemberData(nameof(IsAsyncData))] - public override async Task FromSql_used_twice_with_parameters(bool async) - { - using var context = CreateContext(); - - var query = context.Set() - .FromSqlRaw(NormalizeDelimitersInRawString("SELECT CAST({0} AS CHAR(5)) AS [CustomerID] FROM RDB$DATABASE"), "ALFKI") - .IgnoreQueryFilters(); - - var result1 = async - ? await query.AnyAsync() - : query.Any(); - - Assert.Equal( - RelationalStrings.QueryFromSqlInsideExists, - async - ? (await Assert.ThrowsAsync(() => query.AnyAsync())).Message - : Assert.Throws(() => query.Any()).Message); - } + //[Theory] + //[MemberData(nameof(IsAsyncData))] + //public override async Task FromSql_used_twice_without_parameters(bool async) + //{ + // using var context = CreateContext(); + + // var query = context.Set() + // .FromSqlRaw(NormalizeDelimitersInRawString("SELECT 'ALFKI' AS [CustomerID] FROM RDB$DATABASE")) + // .IgnoreQueryFilters(); + + // var result1 = async + // ? await query.AnyAsync() + // : query.Any(); + + // Assert.Equal( + // RelationalStrings.QueryFromSqlInsideExists, + // async + // ? (await Assert.ThrowsAsync(() => query.AnyAsync())).Message + // : Assert.Throws(() => query.Any()).Message); + //} + + //[Theory] + //[MemberData(nameof(IsAsyncData))] + //public override async Task FromSql_used_twice_with_parameters(bool async) + //{ + // using var context = CreateContext(); + + // var query = context.Set() + // .FromSqlRaw(NormalizeDelimitersInRawString("SELECT CAST({0} AS CHAR(5)) AS [CustomerID] FROM RDB$DATABASE"), "ALFKI") + // .IgnoreQueryFilters(); + + // var result1 = async + // ? await query.AnyAsync() + // : query.Any(); + + // Assert.Equal( + // RelationalStrings.QueryFromSqlInsideExists, + // async + // ? (await Assert.ThrowsAsync(() => query.AnyAsync())).Message + // : Assert.Throws(() => query.Any()).Message); + //} [Theory(Skip = "Provider does the casting.")] [MemberData(nameof(IsAsyncData))] diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/TestUtilities/FbTestHelpers.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/TestUtilities/FbTestHelpers.cs index 1fa18c875..569eb364e 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/TestUtilities/FbTestHelpers.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/TestUtilities/FbTestHelpers.cs @@ -24,7 +24,7 @@ namespace FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests.TestUtilities; -public class FbTestHelpers : TestHelpers +public class FbTestHelpers : RelationalTestHelpers { protected FbTestHelpers() { } @@ -34,7 +34,7 @@ protected FbTestHelpers() public override IServiceCollection AddProviderServices(IServiceCollection services) => services.AddEntityFrameworkFirebird(); - public override void UseProviderOptions(DbContextOptionsBuilder optionsBuilder) + public override DbContextOptionsBuilder UseProviderOptions(DbContextOptionsBuilder optionsBuilder) => optionsBuilder.UseFirebird(new FbConnection("database=localhost:_.fdb;user=sysdba;password=masterkey;charset=utf8")); #pragma warning disable EF1001 diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/UpdatesFbFixture.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/UpdatesFbFixture.cs index d1f63ec7f..d370b65c2 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/UpdatesFbFixture.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests/UpdatesFbFixture.cs @@ -24,7 +24,7 @@ namespace FirebirdSql.EntityFrameworkCore.Firebird.FunctionalTests; -public class UpdatesFbFixture : UpdatesRelationalFixture +public class UpdatesFbFixture : UpdatesRelationalTestBase.UpdatesRelationalFixture { protected override ITestStoreFactory TestStoreFactory => FbTestStoreFactory.Instance; diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird.Tests/FirebirdSql.EntityFrameworkCore.Firebird.Tests.csproj b/src/FirebirdSql.EntityFrameworkCore.Firebird.Tests/FirebirdSql.EntityFrameworkCore.Firebird.Tests.csproj index 01e4a4c41..41ac9f0db 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird.Tests/FirebirdSql.EntityFrameworkCore.Firebird.Tests.csproj +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird.Tests/FirebirdSql.EntityFrameworkCore.Firebird.Tests.csproj @@ -1,6 +1,6 @@  - net6.0 + net7.0 false false true diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird/FirebirdSql.EntityFrameworkCore.Firebird.csproj b/src/FirebirdSql.EntityFrameworkCore.Firebird/FirebirdSql.EntityFrameworkCore.Firebird.csproj index 078172155..9769b6701 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird/FirebirdSql.EntityFrameworkCore.Firebird.csproj +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird/FirebirdSql.EntityFrameworkCore.Firebird.csproj @@ -1,6 +1,6 @@  - net6.0 + net7.0 FirebirdSql.EntityFrameworkCore.Firebird FirebirdSql.EntityFrameworkCore.Firebird true @@ -29,8 +29,8 @@ - - + + diff --git a/src/FirebirdSql.EntityFrameworkCore.Firebird/Update/Internal/FbUpdateSqlGenerator.cs b/src/FirebirdSql.EntityFrameworkCore.Firebird/Update/Internal/FbUpdateSqlGenerator.cs index 79bda6d17..85fc77910 100644 --- a/src/FirebirdSql.EntityFrameworkCore.Firebird/Update/Internal/FbUpdateSqlGenerator.cs +++ b/src/FirebirdSql.EntityFrameworkCore.Firebird/Update/Internal/FbUpdateSqlGenerator.cs @@ -32,15 +32,9 @@ public FbUpdateSqlGenerator(UpdateSqlGeneratorDependencies dependencies) : base(dependencies) { } - protected override void AppendIdentityWhereCondition(StringBuilder commandStringBuilder, IColumnModification columnModification) - => throw new InvalidOperationException(); - - protected override void AppendRowsAffectedWhereCondition(StringBuilder commandStringBuilder, int expectedRowsAffected) - => throw new InvalidOperationException(); - public override ResultSetMapping AppendInsertOperation(StringBuilder commandStringBuilder, IReadOnlyModificationCommand command, int commandPosition) { - var result = ResultSetMapping.NoResultSet; + var result = ResultSetMapping.NoResults; var name = command.TableName; var operations = command.ColumnModifications; var writeOperations = operations.Where(o => o.IsWrite).ToList(); diff --git a/src/Scratchpad/Scratchpad.csproj b/src/Scratchpad/Scratchpad.csproj index 12c71a531..03f5f17c9 100644 --- a/src/Scratchpad/Scratchpad.csproj +++ b/src/Scratchpad/Scratchpad.csproj @@ -1,7 +1,7 @@  Exe - net6.0 + net7.0 true true ..\FirebirdSql.Data.TestsBase\FirebirdSql.Data.TestsBase.snk