Skip to content

Commit 508c758

Browse files
Copilotrenemadsen
andcommitted
Enable primitive collections support for ComplexJson tests
Added EnablePrimitiveCollectionsSupport to all ComplexJson test fixtures. This enables testing of primitive collections within JSON columns for MySQL 8.0.40+. Co-authored-by: renemadsen <76994+renemadsen@users.noreply.github.com>
1 parent c229101 commit 508c758

File tree

7 files changed

+60
-0
lines changed

7 files changed

+60
-0
lines changed

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonBulkUpdateMySqlTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using System.Threading.Tasks;
2+
using Microsoft.EntityFrameworkCore;
23
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
34
using Microsoft.EntityFrameworkCore.TestUtilities;
45
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
6+
using Microsoft.EntityFrameworkCore.Infrastructure;
57
using Xunit;
68
using Xunit.Abstractions;
79

@@ -124,5 +126,12 @@ public class ComplexJsonBulkUpdateMySqlFixture : ComplexJsonRelationalFixtureBas
124126
{
125127
protected override ITestStoreFactory TestStoreFactory
126128
=> MySqlTestStoreFactory.Instance;
129+
130+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
131+
{
132+
var optionsBuilder = base.AddOptions(builder);
133+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
134+
return optionsBuilder;
135+
}
127136
}
128137
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonCollectionMySqlTest.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
44
using Microsoft.EntityFrameworkCore.TestUtilities;
55
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
6+
using Microsoft.EntityFrameworkCore.Infrastructure;
67
using Xunit;
78
using Xunit.Abstractions;
89

@@ -105,5 +106,12 @@ public class ComplexJsonCollectionMySqlFixture : ComplexJsonRelationalFixtureBas
105106
{
106107
protected override ITestStoreFactory TestStoreFactory
107108
=> MySqlTestStoreFactory.Instance;
109+
110+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
111+
{
112+
var optionsBuilder = base.AddOptions(builder);
113+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
114+
return optionsBuilder;
115+
}
108116
}
109117
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonMiscellaneousMySqlTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Microsoft.EntityFrameworkCore;
12
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
23
using Microsoft.EntityFrameworkCore.TestUtilities;
34
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
5+
using Microsoft.EntityFrameworkCore.Infrastructure;
46
using Xunit;
57
using Xunit.Abstractions;
68

@@ -18,5 +20,12 @@ public class ComplexJsonMiscellaneousMySqlFixture : ComplexJsonRelationalFixture
1820
{
1921
protected override ITestStoreFactory TestStoreFactory
2022
=> MySqlTestStoreFactory.Instance;
23+
24+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
25+
{
26+
var optionsBuilder = base.AddOptions(builder);
27+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
28+
return optionsBuilder;
29+
}
2130
}
2231
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonPrimitiveCollectionMySqlTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
using Microsoft.EntityFrameworkCore;
12
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
23
using Microsoft.EntityFrameworkCore.TestUtilities;
34
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
5+
using Microsoft.EntityFrameworkCore.Infrastructure;
46
using Xunit;
57
using Xunit.Abstractions;
68

@@ -18,5 +20,12 @@ public class ComplexJsonPrimitiveCollectionMySqlFixture : ComplexJsonRelationalF
1820
{
1921
protected override ITestStoreFactory TestStoreFactory
2022
=> MySqlTestStoreFactory.Instance;
23+
24+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
25+
{
26+
var optionsBuilder = base.AddOptions(builder);
27+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
28+
return optionsBuilder;
29+
}
2130
}
2231
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonProjectionMySqlTest.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
44
using Microsoft.EntityFrameworkCore.TestUtilities;
55
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
6+
using Microsoft.EntityFrameworkCore.Infrastructure;
67
using Xunit;
78
using Xunit.Abstractions;
89

@@ -93,5 +94,12 @@ public class ComplexJsonProjectionMySqlFixture : ComplexJsonRelationalFixtureBas
9394
{
9495
protected override ITestStoreFactory TestStoreFactory
9596
=> MySqlTestStoreFactory.Instance;
97+
98+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
99+
{
100+
var optionsBuilder = base.AddOptions(builder);
101+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
102+
return optionsBuilder;
103+
}
96104
}
97105
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonSetOperationsMySqlTest.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
44
using Microsoft.EntityFrameworkCore.TestUtilities;
55
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
6+
using Microsoft.EntityFrameworkCore.Infrastructure;
67
using Xunit;
78
using Xunit.Abstractions;
89

@@ -58,5 +59,12 @@ public class ComplexJsonSetOperationsMySqlFixture : ComplexJsonRelationalFixture
5859
{
5960
protected override ITestStoreFactory TestStoreFactory
6061
=> MySqlTestStoreFactory.Instance;
62+
63+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
64+
{
65+
var optionsBuilder = base.AddOptions(builder);
66+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
67+
return optionsBuilder;
68+
}
6169
}
6270
}

test/EFCore.MySql.FunctionalTests/Query/Associations/ComplexJson/ComplexJsonStructuralEqualityMySqlTest.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using System.Threading.Tasks;
2+
using Microsoft.EntityFrameworkCore;
23
using Microsoft.EntityFrameworkCore.Query.Associations.ComplexJson;
34
using Microsoft.EntityFrameworkCore.TestUtilities;
45
using Pomelo.EntityFrameworkCore.MySql.FunctionalTests.TestUtilities;
6+
using Microsoft.EntityFrameworkCore.Infrastructure;
57
using Xunit;
68
using Xunit.Abstractions;
79

@@ -114,5 +116,12 @@ public class ComplexJsonStructuralEqualityMySqlFixture : ComplexJsonRelationalFi
114116
{
115117
protected override ITestStoreFactory TestStoreFactory
116118
=> MySqlTestStoreFactory.Instance;
119+
120+
public override DbContextOptionsBuilder AddOptions(DbContextOptionsBuilder builder)
121+
{
122+
var optionsBuilder = base.AddOptions(builder);
123+
new MySqlDbContextOptionsBuilder(optionsBuilder).EnablePrimitiveCollectionsSupport();
124+
return optionsBuilder;
125+
}
117126
}
118127
}

0 commit comments

Comments
 (0)