diff --git a/EFCore.Jet.sln b/EFCore.Jet.sln index 9a2b813..558523a 100644 --- a/EFCore.Jet.sln +++ b/EFCore.Jet.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio Version 16 -VisualStudioVersion = 16.0.29806.167 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.32916.344 MinimumVisualStudioVersion = 10.0.40219.1 Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{F68095EE-6CD1-43A2-B498-6CA72CE2A0CB}" ProjectSection(SolutionItems) = preProject @@ -30,18 +30,18 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{B7FF1850-2 EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "root", "root", "{76210BB4-A506-4838-8BBF-57DA18C8FA03}" -ProjectSection(SolutionItems) = preProject - Directory.Build.props = Directory.Build.props - NuGet.Config = NuGet.Config - Directory.Build.targets = Directory.Build.targets - global.json = global.json - Dependencies.targets = Dependencies.targets - Version.props = Version.props - Development.props = Development.props - Development.props.sample = Development.props.sample - Key.snk = Key.snk - docs\README.md = docs\README.md -EndProjectSection + ProjectSection(SolutionItems) = preProject + Dependencies.targets = Dependencies.targets + Development.props = Development.props + Development.props.sample = Development.props.sample + Directory.Build.props = Directory.Build.props + Directory.Build.targets = Directory.Build.targets + global.json = global.json + Key.snk = Key.snk + NuGet.Config = NuGet.Config + docs\README.md = docs\README.md + Version.props = Version.props + EndProjectSection EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EFCore.Jet.Tests", "test\EFCore.Jet.Tests\EFCore.Jet.Tests.csproj", "{770A076B-A448-499C-BB86-A37994C04523}" EndProject @@ -52,9 +52,9 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tools", "tools", "{84E4151A tools\Resources.tt = tools\Resources.tt EndProjectSection EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EFCore.Jet.Odbc", "src\EFCore.Jet.Odbc\EFCore.Jet.Odbc.csproj", "{1E0729DA-B861-46EA-B1F1-3AE20EA1E00A}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EFCore.Jet.Odbc", "src\EFCore.Jet.Odbc\EFCore.Jet.Odbc.csproj", "{1E0729DA-B861-46EA-B1F1-3AE20EA1E00A}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EFCore.Jet.OleDb", "src\EFCore.Jet.OleDb\EFCore.Jet.OleDb.csproj", "{FFC89A2D-F68F-47E3-BA00-47E9C0BEDB71}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EFCore.Jet.OleDb", "src\EFCore.Jet.OleDb\EFCore.Jet.OleDb.csproj", "{FFC89A2D-F68F-47E3-BA00-47E9C0BEDB71}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -130,8 +130,8 @@ Global {770A076B-A448-499C-BB86-A37994C04523}.Debug|Any CPU.Build.0 = Debug|Any CPU {770A076B-A448-499C-BB86-A37994C04523}.Debug|x64.ActiveCfg = Debug|Any CPU {770A076B-A448-499C-BB86-A37994C04523}.Debug|x64.Build.0 = Debug|Any CPU - {770A076B-A448-499C-BB86-A37994C04523}.Debug|x86.ActiveCfg = Debug|Any CPU - {770A076B-A448-499C-BB86-A37994C04523}.Debug|x86.Build.0 = Debug|Any CPU + {770A076B-A448-499C-BB86-A37994C04523}.Debug|x86.ActiveCfg = Debug|x86 + {770A076B-A448-499C-BB86-A37994C04523}.Debug|x86.Build.0 = Debug|x86 {770A076B-A448-499C-BB86-A37994C04523}.Release|Any CPU.ActiveCfg = Release|Any CPU {770A076B-A448-499C-BB86-A37994C04523}.Release|Any CPU.Build.0 = Release|Any CPU {770A076B-A448-499C-BB86-A37994C04523}.Release|x64.ActiveCfg = Release|Any CPU diff --git a/test/EFCore.Jet.FunctionalTests/DataAnnotationJetTest.cs b/test/EFCore.Jet.FunctionalTests/DataAnnotationJetTest.cs index ce6d1ac..8906d30 100644 --- a/test/EFCore.Jet.FunctionalTests/DataAnnotationJetTest.cs +++ b/test/EFCore.Jet.FunctionalTests/DataAnnotationJetTest.cs @@ -49,7 +49,7 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder Non_public_annotations_are_enabled() + public override IModel Non_public_annotations_are_enabled() { var modelBuilder = base.Non_public_annotations_are_enabled(); @@ -60,7 +60,7 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder Field_annotations_are_enabled() + public override IModel Field_annotations_are_enabled() { var modelBuilder = base.Field_annotations_are_enabled(); @@ -71,7 +71,7 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder Key_and_column_work_together() + public override IModel Key_and_column_work_together() { var modelBuilder = base.Key_and_column_work_together(); @@ -82,7 +82,7 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder Key_and_MaxLength_64_produce_nvarchar_64() + public override IModel Key_and_MaxLength_64_produce_nvarchar_64() { var modelBuilder = base.Key_and_MaxLength_64_produce_nvarchar_64(); @@ -95,7 +95,7 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder Timestamp_takes_precedence_over_MaxLength() + public override IModel Timestamp_takes_precedence_over_MaxLength() { var modelBuilder = base.Timestamp_takes_precedence_over_MaxLength(); @@ -108,20 +108,20 @@ namespace EntityFrameworkCore.Jet.FunctionalTests return modelBuilder; } - public override ModelBuilder TableNameAttribute_affects_table_name_in_TPH() + public override IModel TableNameAttribute_affects_table_name_in_TPH() { var modelBuilder = base.TableNameAttribute_affects_table_name_in_TPH(); - Assert.Equal("A", modelBuilder.Model.FindEntityType(typeof(TNAttrBase)).GetTableName()); + Assert.Equal("A", modelBuilder.FindEntityType(typeof(TNAttrBase)).GetTableName()); return modelBuilder; } - public override ModelBuilder DatabaseGeneratedOption_configures_the_property_correctly() + public override IModel DatabaseGeneratedOption_configures_the_property_correctly() { var modelBuilder = base.DatabaseGeneratedOption_configures_the_property_correctly(); - var identity = modelBuilder.Model.FindEntityType(typeof(GeneratedEntity)).FindProperty(nameof(GeneratedEntity.Identity)); + var identity = modelBuilder.FindEntityType(typeof(GeneratedEntity)).FindProperty(nameof(GeneratedEntity.Identity)); Assert.Equal(JetValueGenerationStrategy.IdentityColumn, identity.GetValueGenerationStrategy()); return modelBuilder; diff --git a/test/EFCore.Jet.FunctionalTests/EFCore.Jet.FunctionalTests.csproj b/test/EFCore.Jet.FunctionalTests/EFCore.Jet.FunctionalTests.csproj index 63d7e9a..24630b8 100644 --- a/test/EFCore.Jet.FunctionalTests/EFCore.Jet.FunctionalTests.csproj +++ b/test/EFCore.Jet.FunctionalTests/EFCore.Jet.FunctionalTests.csproj @@ -69,6 +69,116 @@ PreserveNewest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -97,4 +207,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/EFCore.Jet.FunctionalTests/MigrationsJetFixture.cs b/test/EFCore.Jet.FunctionalTests/MigrationsJetFixture.cs index a983034..d7766b5 100644 --- a/test/EFCore.Jet.FunctionalTests/MigrationsJetFixture.cs +++ b/test/EFCore.Jet.FunctionalTests/MigrationsJetFixture.cs @@ -3,6 +3,7 @@ using EntityFrameworkCore.Jet.Data; using EntityFrameworkCore.Jet.FunctionalTests.TestUtilities; using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.TestUtilities; namespace EntityFrameworkCore.Jet.FunctionalTests diff --git a/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalCommandBuilderFactory.cs b/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalCommandBuilderFactory.cs index e32143a..af3b943 100644 --- a/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalCommandBuilderFactory.cs +++ b/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalCommandBuilderFactory.cs @@ -1,8 +1,11 @@ // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System; using System.Collections.Generic; +using System.Data.Common; using System.Threading; using System.Threading.Tasks; +using Microsoft.EntityFrameworkCore.Diagnostics; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage; @@ -197,6 +200,15 @@ namespace EntityFrameworkCore.Jet.FunctionalTests.TestUtilities return result; } + public DbCommand CreateDbCommand( + RelationalCommandParameterObject parameterObject, + Guid commandId, + DbCommandMethod commandMethod) + => throw new NotSupportedException(); + + public void PopulateFrom(IRelationalCommandTemplate commandTemplate) + => _realRelationalCommand.PopulateFrom(commandTemplate); + private int? PreExecution(IRelationalConnection connection) { int? errorNumber = null; diff --git a/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalTransaction.cs b/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalTransaction.cs index a4f9546..e5e9801 100644 --- a/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalTransaction.cs +++ b/test/EFCore.Jet.FunctionalTests/TestUtilities/TestRelationalTransaction.cs @@ -10,13 +10,20 @@ namespace EntityFrameworkCore.Jet.FunctionalTests.TestUtilities { public class TestRelationalTransactionFactory : IRelationalTransactionFactory { + public TestRelationalTransactionFactory(RelationalTransactionFactoryDependencies dependencies) + { + Dependencies = dependencies; + } + + protected virtual RelationalTransactionFactoryDependencies Dependencies { get; } + public RelationalTransaction Create( IRelationalConnection connection, DbTransaction transaction, Guid transactionId, IDiagnosticsLogger logger, bool transactionOwned) - => new TestRelationalTransaction(connection, transaction, logger, transactionOwned); + => new TestRelationalTransaction(connection, transaction, logger, transactionOwned, Dependencies.SqlGenerationHelper); } public class TestRelationalTransaction : RelationalTransaction @@ -27,8 +34,9 @@ namespace EntityFrameworkCore.Jet.FunctionalTests.TestUtilities IRelationalConnection connection, DbTransaction transaction, IDiagnosticsLogger logger, - bool transactionOwned) - : base(connection, transaction, new Guid(), logger, transactionOwned) + bool transactionOwned, + ISqlGenerationHelper sqlGenerationHelper) + : base(connection, transaction, new Guid(), logger, transactionOwned, sqlGenerationHelper) { _testConnection = (TestJetConnection)connection; } diff --git a/test/EFCore.Jet.IntegrationTests/DefaultValueTest.cs b/test/EFCore.Jet.IntegrationTests/DefaultValueTest.cs index 59b6397..9cbe419 100644 --- a/test/EFCore.Jet.IntegrationTests/DefaultValueTest.cs +++ b/test/EFCore.Jet.IntegrationTests/DefaultValueTest.cs @@ -61,6 +61,7 @@ namespace EntityFramework.Jet.FunctionalTests b.Property(e => e.ChipperId) .IsRequired() .HasDefaultValue("Default"); + }); } diff --git a/test/EFCore.Jet.Tests/EFCore.Jet.Tests.csproj b/test/EFCore.Jet.Tests/EFCore.Jet.Tests.csproj index 95e7d18..0fc520e 100644 --- a/test/EFCore.Jet.Tests/EFCore.Jet.Tests.csproj +++ b/test/EFCore.Jet.Tests/EFCore.Jet.Tests.csproj @@ -4,6 +4,7 @@ $(WindowsOnlyNetCoreTargetFramework) EntityFrameworkCore.Jet.Tests EntityFrameworkCore.Jet + AnyCPU;x86