From d287061be64ad06756acf36b8f87cc44061e15c4 Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Wed, 15 Jul 2026 13:13:09 +1000 Subject: [PATCH] Scope EF converters to Verify settings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Switch converter registration from `DefaultContractResolver.Converters` to `VerifierSettings.AddExtraSettings(...)` so EF converters are added through Verify’s serializer settings pipeline. Also updates related package versions (Verify/Verify.NUnit, Argon, Polyfill), removes an unused using, tweaks a HashSet initialization style, and refreshes a README snippet line reference. --- readme.md | 2 +- src/Directory.Build.props | 2 +- src/Directory.Packages.props | 10 +++++----- .../ModuleInitializer.cs | 2 -- .../DescriptiveParameterNameGenerator.cs | 2 +- .../VerifyEntityFramework.cs | 14 +++++++++----- 6 files changed, 17 insertions(+), 15 deletions(-) diff --git a/readme.md b/readme.md index 2251ea9d..1a461042 100644 --- a/readme.md +++ b/readme.md @@ -300,7 +300,7 @@ Recording is attached by `EnableRecording()`. Pass `recordCommands: false` to `I ```cs VerifyEntityFramework.Initialize(data, recordCommands: false); ``` -snippet source | anchor +snippet source | anchor Only recording is disabled. The converters, and the queryable to SQL file converter, are still registered. diff --git a/src/Directory.Build.props b/src/Directory.Build.props index c615c4fc..83eebb68 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -2,7 +2,7 @@ CS1591;CS0649;CS8632;EF1001;NU1608;NU1109 - 15.3.0 + 15.3.1 preview 1.0.0 EntityFramework, Verify diff --git a/src/Directory.Packages.props b/src/Directory.Packages.props index 06c54d9e..0f211ff0 100644 --- a/src/Directory.Packages.props +++ b/src/Directory.Packages.props @@ -17,17 +17,17 @@ - + - + - + - + - + \ No newline at end of file diff --git a/src/Verify.EntityFramework.RecordingDisabledTests/ModuleInitializer.cs b/src/Verify.EntityFramework.RecordingDisabledTests/ModuleInitializer.cs index 1021b09e..bad5eda0 100644 --- a/src/Verify.EntityFramework.RecordingDisabledTests/ModuleInitializer.cs +++ b/src/Verify.EntityFramework.RecordingDisabledTests/ModuleInitializer.cs @@ -1,5 +1,3 @@ -using Microsoft.EntityFrameworkCore.Metadata; - public static class ModuleInitializer { [ModuleInitializer] diff --git a/src/Verify.EntityFramework/DescriptiveParameterNameGenerator.cs b/src/Verify.EntityFramework/DescriptiveParameterNameGenerator.cs index 4b83a42a..1b073f40 100644 --- a/src/Verify.EntityFramework/DescriptiveParameterNameGenerator.cs +++ b/src/Verify.EntityFramework/DescriptiveParameterNameGenerator.cs @@ -5,7 +5,7 @@ class DescriptiveParameterNameGenerator : Dictionary names = new(StringComparer.OrdinalIgnoreCase); // All generated param names, for collision detection - HashSet allGenerated = new(StringComparer.OrdinalIgnoreCase); + HashSet allGenerated = [with(StringComparer.OrdinalIgnoreCase)]; string? pendingColumnName; string? pendingEntityName; diff --git a/src/Verify.EntityFramework/VerifyEntityFramework.cs b/src/Verify.EntityFramework/VerifyEntityFramework.cs index 65b44586..e6a9f0e6 100644 --- a/src/Verify.EntityFramework/VerifyEntityFramework.cs +++ b/src/Verify.EntityFramework/VerifyEntityFramework.cs @@ -144,11 +144,15 @@ public static void Initialize(IModel? model, bool recordCommands) (target, _) => QueryableConverter.IsQueryable(target)); VerifierSettings.IgnoreMembersWithType(typeof(IDbContextFactory<>)); VerifierSettings.IgnoreMembersWithType(); - var converters = DefaultContractResolver.Converters; - converters.Add(new DbUpdateExceptionConverter()); - converters.Add(new TrackerConverter()); - converters.Add(new QueryableConverter()); - converters.Add(new LogEntryConverter()); + + VerifierSettings.AddExtraSettings(settings => + { + var converters = settings.Converters; + converters.Add(new DbUpdateExceptionConverter()); + converters.Add(new TrackerConverter()); + converters.Add(new QueryableConverter()); + converters.Add(new LogEntryConverter()); + }); } static bool IsSqlServer(this IModel model) {