Skip to content

Commit 088873e

Browse files
committed
Path to stable 9 release.
1 parent 78cfaaa commit 088873e

17 files changed

+1493
-988
lines changed

Directory.Packages.props

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,30 @@
11
<Project>
22
<PropertyGroup Label="Common Versions">
3-
<EFCoreVersion>[9.0.0,9.0.999]</EFCoreVersion>
3+
<EFCoreVersion>[9.0.5,9.0.999]</EFCoreVersion>
44
</PropertyGroup>
5-
65
<ItemGroup Label="Dependencies">
76
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="$(EFCoreVersion)" />
87
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="$(EFCoreVersion)" />
98
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="$(EFCoreVersion)" />
109
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="$(EFCoreVersion)" />
11-
1210
<PackageVersion Include="MySqlConnector" Version="2.4.0" />
1311
<PackageVersion Include="MySqlConnector.DependencyInjection" Version="2.4.0" />
14-
1512
<PackageVersion Include="NetTopologySuite" Version="2.5.0" />
1613
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
17-
1814
<PackageVersion Include="Castle.Core" Version="5.1.1" />
19-
<PackageVersion Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="9.0.0" />
20-
<PackageVersion Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="9.0.0" />
15+
<PackageVersion Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="9.0.1" />
16+
<PackageVersion Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="9.0.1" />
2117
<PackageVersion Include="Microsoft.Bcl.AsyncInterfaces" Version="9.0.0" />
2218
<!--<PackageVersion Include="Microsoft.Bcl.HashCode" Version="1.1.1" />-->
2319
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="9.0.0" />
24-
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="9.0.0" />
25-
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="9.0.0" />
26-
<PackageVersion Include="Microsoft.Extensions.Configuration.FileExtensions" Version="9.0.0" />
27-
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="9.0.0" />
28-
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="9.0.0" /> <!-- CHECK: used? -->
29-
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="9.0.0" />
30-
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="9.0.0" />
20+
<PackageVersion Include="Microsoft.Extensions.Configuration.Binder" Version="$(EFCoreVersion)" />
21+
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="$(EFCoreVersion)" />
22+
<PackageVersion Include="Microsoft.Extensions.Configuration.FileExtensions" Version="$(EFCoreVersion)" />
23+
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="$(EFCoreVersion)" />
24+
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="$(EFCoreVersion)" />
25+
<!-- CHECK: used? -->
26+
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="$(EFCoreVersion)" />
27+
<PackageVersion Include="Microsoft.Extensions.DependencyModel" Version="$(EFCoreVersion)" />
3128
<PackageVersion Include="Microsoft.Extensions.Logging" Version="9.0.0" />
3229
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.12.0" />
3330
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
@@ -37,15 +34,13 @@
3734
<PackageVersion Include="System.Diagnostics.DiagnosticSource" Version="9.0.0" />
3835
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
3936
<PackageVersion Include="Xunit.SkippableFact" Version="1.4.13" />
40-
4137
<!-- Keep at the same level that the EF Core projects use. -->
4238
<PackageVersion Include="xunit.assert" Version="2.9.2" />
4339
<PackageVersion Include="xunit.core" Version="2.9.2" />
4440
<PackageVersion Include="xunit.runner.console" Version="2.9.2" />
4541
<PackageVersion Include="xunit.runner.visualstudio" Version="2.8.2" />
4642
<PackageVersion Include="DotNetAnalyzers.DocumentationAnalyzers" Version="1.0.0-beta.59" />
4743
<PackageVersion Include="StyleCop.Analyzers" Version="1.1.118" PrivateAssets="All" />
48-
4944
<!-- Needed when using EFCore.Design assembly from local EF Core repository. -->
5045
<PackageVersion Include="Microsoft.CodeAnalysis" Version="4.10.0" />
5146
<PackageVersion Include="Microsoft.CodeAnalysis.CSharp" Version="4.10.0" />

test/EFCore.MySql.FunctionalTests/MigrationsInfrastructureMySqlTest.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ public MigrationsInfrastructureMySqlTest(MigrationsInfrastructureMySqlFixture fi
2020
{
2121
}
2222

23-
public override void Can_generate_migration_from_initial_database_to_initial()
23+
public override async Task Can_generate_migration_from_initial_database_to_initial()
2424
{
25-
base.Can_generate_migration_from_initial_database_to_initial();
25+
await base.Can_generate_migration_from_initial_database_to_initial();
2626

2727
Assert.Equal(
2828
@"CREATE TABLE IF NOT EXISTS `__EFMigrationsHistory` (
@@ -36,9 +36,9 @@ public override void Can_generate_migration_from_initial_database_to_initial()
3636
ignoreLineEndingDifferences: true);
3737
}
3838

39-
public override void Can_generate_no_migration_script()
39+
public override async Task Can_generate_no_migration_script()
4040
{
41-
base.Can_generate_no_migration_script();
41+
await base.Can_generate_no_migration_script();
4242

4343
Assert.Equal(
4444
@"CREATE TABLE IF NOT EXISTS `__EFMigrationsHistory` (

test/EFCore.MySql.FunctionalTests/MigrationsMySqlTest.cs

Lines changed: 51 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2163,7 +2163,57 @@ public override async Task Add_required_primitve_collection_with_custom_converte
21632163
{
21642164
await base.Add_required_primitve_collection_with_custom_converter_to_existing_table();
21652165

2166-
AssertSql();
2166+
AssertSql(
2167+
"""
2168+
ALTER TABLE `Customers` ADD `Numbers` longtext CHARACTER SET utf8mb4 NOT NULL DEFAULT ('some numbers');
2169+
""");
2170+
}
2171+
2172+
// TODO implement the correct tests
2173+
public override async Task Multiop_drop_table_and_create_the_same_table_in_one_migration()
2174+
{
2175+
await base.Multiop_drop_table_and_create_the_same_table_in_one_migration();
2176+
2177+
AssertSql(
2178+
@"DROP TABLE `Customers`;",
2179+
@"CREATE TABLE `Customers` (
2180+
`Id` int NOT NULL AUTO_INCREMENT,
2181+
`Name` longtext CHARACTER SET utf8mb4 NULL,
2182+
CONSTRAINT `PK_Customers` PRIMARY KEY (`Id`)
2183+
) CHARACTER SET=utf8mb4;");
2184+
}
2185+
2186+
// TODO implement the correct tests
2187+
public override async Task Multiop_create_table_and_drop_it_in_one_migration()
2188+
{
2189+
await base.Multiop_create_table_and_drop_it_in_one_migration();
2190+
2191+
AssertSql(@"CREATE TABLE `Customers` (
2192+
`Id` int NOT NULL AUTO_INCREMENT,
2193+
`Name` longtext CHARACTER SET utf8mb4 NULL,
2194+
CONSTRAINT `PK_Customers` PRIMARY KEY (`Id`)
2195+
) CHARACTER SET=utf8mb4;", "DROP TABLE `Customers`;");
2196+
}
2197+
2198+
// TODO implement the correct tests
2199+
public override async Task Multiop_rename_table_and_drop()
2200+
{
2201+
await base.Multiop_rename_table_and_drop();
2202+
2203+
AssertSql(
2204+
"""
2205+
ALTER TABLE `Customers` ADD `Numbers` longtext CHARACTER SET utf8mb4 NOT NULL DEFAULT ('some numbers');
2206+
""");
2207+
}
2208+
// TODO implement the correct tests
2209+
public override async Task Multiop_rename_table_and_create_new_table_with_the_old_name()
2210+
{
2211+
await base.Multiop_rename_table_and_create_new_table_with_the_old_name();
2212+
2213+
AssertSql(
2214+
"""
2215+
ALTER TABLE `Customers` ADD `Numbers` longtext CHARACTER SET utf8mb4 NOT NULL DEFAULT ('some numbers');
2216+
""");
21672217
}
21682218

21692219
public override async Task Add_required_primitve_collection_with_custom_converter_and_custom_default_value_to_existing_table()

test/EFCore.MySql.FunctionalTests/MySqlComplianceTest.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ public class MySqlComplianceTest : RelationalComplianceTestBase
4848

4949
// We have our own JSON support for now
5050
typeof(AdHocJsonQueryTestBase),
51+
typeof(AdHocJsonQueryRelationalTestBase),
5152
typeof(JsonQueryTestBase<>),
5253
typeof(JsonTypesRelationalTestBase),
5354
typeof(JsonTypesTestBase),

test/EFCore.MySql.FunctionalTests/Query/AdHocJsonQueryMySqlTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
namespace Pomelo.EntityFrameworkCore.MySql.FunctionalTests.Query;
1616

1717
// Disabled via internal access. The EF Core 7.0 JSON support isn't currently implemented.
18-
internal class AdHocJsonQueryMySqlTest : AdHocJsonQueryTestBase
18+
internal class AdHocJsonQueryMySqlTest : AdHocJsonQueryRelationalTestBase
1919
{
2020
protected override ITestStoreFactory TestStoreFactory
2121
=> MySqlTestStoreFactory.Instance;

test/EFCore.MySql.FunctionalTests/Query/PrimitiveCollectionsQueryMySqlTest.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2206,6 +2206,13 @@ public override async Task Parameter_collection_with_type_inference_for_JsonScal
22062206
AssertSql();
22072207
}
22082208

2209+
public override async Task Parameter_collection_ImmutableArray_of_ints_Contains_int(bool async)
2210+
{
2211+
await base.Parameter_collection_ImmutableArray_of_ints_Contains_int(async);
2212+
2213+
AssertSql();
2214+
}
2215+
22092216
public override async Task Column_collection_Where_Union(bool async)
22102217
{
22112218
await base.Column_collection_Where_Union(async);

test/EFCore.MySql.FunctionalTests/Query/TPCGearsOfWarQueryMySqlTest.cs

Lines changed: 36 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,39 @@ public TPCGearsOfWarQueryMySqlTest(TPCGearsOfWarQueryMySqlFixture fixture, ITest
2828
public virtual void Check_all_tests_overridden()
2929
=> MySqlTestHelpers.AssertAllMethodsOverridden(GetType());
3030

31+
// TODO: Create a test for this
32+
public override async Task Coalesce_with_non_root_evaluatable_Convert(bool async)
33+
{
34+
await base.Coalesce_with_non_root_evaluatable_Convert(async);
35+
36+
AssertSql(
37+
"""
38+
@__rank_0='1' (Nullable = true)
39+
40+
SELECT `u`.`Nickname`, `u`.`SquadId`, `u`.`AssignedCityName`, `u`.`CityOfBirthName`, `u`.`FullName`, `u`.`HasSoulPatch`, `u`.`LeaderNickname`, `u`.`LeaderSquadId`, `u`.`Rank`, `u`.`Discriminator`
41+
FROM (
42+
SELECT `g`.`Nickname`, `g`.`SquadId`, `g`.`AssignedCityName`, `g`.`CityOfBirthName`, `g`.`FullName`, `g`.`HasSoulPatch`, `g`.`LeaderNickname`, `g`.`LeaderSquadId`, `g`.`Rank`, 'Gear' AS `Discriminator`
43+
FROM `Gears` AS `g`
44+
UNION ALL
45+
SELECT `o`.`Nickname`, `o`.`SquadId`, `o`.`AssignedCityName`, `o`.`CityOfBirthName`, `o`.`FullName`, `o`.`HasSoulPatch`, `o`.`LeaderNickname`, `o`.`LeaderSquadId`, `o`.`Rank`, 'Officer' AS `Discriminator`
46+
FROM `Officers` AS `o`
47+
) AS `u`
48+
WHERE @__rank_0 = `u`.`Rank`
49+
""");
50+
}
51+
52+
// TODO: Create a test for this
53+
public override async Task Project_equality_with_value_converted_property(bool async)
54+
{
55+
await base.Project_equality_with_value_converted_property(async);
56+
57+
AssertSql(
58+
"""
59+
SELECT `m`.`Difficulty` = 'Unknown'
60+
FROM `Missions` AS `m`
61+
""");
62+
}
63+
3164
public override async Task Entity_equality_empty(bool async)
3265
{
3366
await base.Entity_equality_empty(async);
@@ -6952,7 +6985,7 @@ INNER JOIN (
69526985
FROM `LocustHordes` AS `l1`
69536986
WHERE `l1`.`Name` = 'Swarm'
69546987
) AS `l2` ON `u`.`Name` = `l2`.`CommanderName`
6955-
WHERE (`l2`.`Eradicated` = FALSE) OR (`l2`.`Eradicated` IS NULL)
6988+
WHERE (`l2`.`Eradicated` <> TRUE) OR (`l2`.`Eradicated` IS NULL)
69566989
""");
69576990
}
69586991

@@ -6975,7 +7008,7 @@ LEFT JOIN (
69757008
FROM `LocustHordes` AS `l1`
69767009
WHERE `l1`.`Name` = 'Swarm'
69777010
) AS `l2` ON `u`.`Name` = `l2`.`CommanderName`
6978-
WHERE (`l2`.`Eradicated` = FALSE) OR (`l2`.`Eradicated` IS NULL)
7011+
WHERE (`l2`.`Eradicated` <> TRUE) OR (`l2`.`Eradicated` IS NULL)
69797012
""");
69807013
}
69817014

@@ -10334,7 +10367,7 @@ UNION ALL
1033410367
INNER JOIN `LocustHordes` AS `l1` ON `u`.`Name` = `l1`.`CommanderName`
1033510368
WHERE (CASE
1033610369
WHEN `l1`.`Name` = 'Locust' THEN TRUE
10337-
END = FALSE) OR (CASE
10370+
END <> TRUE) OR (CASE
1033810371
WHEN `l1`.`Name` = 'Locust' THEN TRUE
1033910372
END IS NULL)
1034010373
""");

0 commit comments

Comments
 (0)