From 9e481b4a5f29b7f912db3b15fae1a13896f00265 Mon Sep 17 00:00:00 2001 From: Simon Cropp Date: Tue, 23 Jan 2024 12:22:07 +1100 Subject: [PATCH] drop [Serializable] from exceptions (#762) * drop [Serializable] from exceptions * drop [Serializable] from exceptions --- .../Core/SerializableExceptionsTest.cs | 21 -------------- .../Core/Exceptions/ApprovalException.cs | 29 ++----------------- .../Exceptions/ApprovalMismatchException.cs | 15 ++-------- .../Exceptions/ApprovalMissingException.cs | 14 ++------- 4 files changed, 7 insertions(+), 72 deletions(-) delete mode 100644 src/ApprovalTests.Tests/Core/SerializableExceptionsTest.cs diff --git a/src/ApprovalTests.Tests/Core/SerializableExceptionsTest.cs b/src/ApprovalTests.Tests/Core/SerializableExceptionsTest.cs deleted file mode 100644 index 5c351bac..00000000 --- a/src/ApprovalTests.Tests/Core/SerializableExceptionsTest.cs +++ /dev/null @@ -1,21 +0,0 @@ -#if NET48 - -using ApprovalTests.Core.Exceptions; -using ApprovalTests.TheoryTests; -[TestFixture] -public class SerializableExceptionsTest -{ - [Test] - public void TestSerializable() - { - var r = "received"; - var a = "approved"; - Verify(new ApprovalMissingException(r, a)); - Verify(new ApprovalMismatchException(r, a)); - Verify(new ApprovalException(r, a)); - } - - static void Verify(object o) => - SerializableTheory.Verify(o, Assert.AreEqual); -} -#endif \ No newline at end of file diff --git a/src/ApprovalTests/Core/Exceptions/ApprovalException.cs b/src/ApprovalTests/Core/Exceptions/ApprovalException.cs index 3b3dd1f3..88ee7dd0 100644 --- a/src/ApprovalTests/Core/Exceptions/ApprovalException.cs +++ b/src/ApprovalTests/Core/Exceptions/ApprovalException.cs @@ -1,25 +1,10 @@ -using System.Runtime.Serialization; - namespace ApprovalTests.Core.Exceptions; -[Serializable] -public class ApprovalException : Exception +public class ApprovalException(string received, string approved) : Exception { - public ApprovalException(SerializationInfo info, StreamingContext context) : base(info, context) - { - Approved = info.GetString("Approved"); - Received = info.GetString("Received"); - } - - public ApprovalException(string received, string approved) - { - Received = received; - Approved = approved; - } + public string Received { get; } = received; - public string Received { get; } - - public string Approved { get; } + public string Approved { get; } = approved; protected bool Equals(ApprovalException other) => string.Equals(Approved, other.Approved) && string.Equals(Received, other.Received); @@ -42,12 +27,4 @@ public override int GetHashCode() public static bool operator ==(ApprovalException left, ApprovalException right) => Equals(left, right); public static bool operator !=(ApprovalException left, ApprovalException right) => !Equals(left, right); - - public override void GetObjectData(SerializationInfo info, StreamingContext context) - { - base.GetObjectData(info, context); - - info.AddValue("Approved", Approved); - info.AddValue("Received", Received); - } } \ No newline at end of file diff --git a/src/ApprovalTests/Core/Exceptions/ApprovalMismatchException.cs b/src/ApprovalTests/Core/Exceptions/ApprovalMismatchException.cs index 075be193..213e087e 100644 --- a/src/ApprovalTests/Core/Exceptions/ApprovalMismatchException.cs +++ b/src/ApprovalTests/Core/Exceptions/ApprovalMismatchException.cs @@ -1,18 +1,7 @@ -using System.Runtime.Serialization; - namespace ApprovalTests.Core.Exceptions; -[Serializable] -public class ApprovalMismatchException : ApprovalException +public class ApprovalMismatchException(string received, string approved) : + ApprovalException(received, approved) { - public ApprovalMismatchException(SerializationInfo info, StreamingContext context) - : base(info, context) - { - } - - public ApprovalMismatchException(string received, string approved) : base(received, approved) - { - } - public override string Message => $"Failed Approval: Received file {Received} does not match approved file {Approved}."; } \ No newline at end of file diff --git a/src/ApprovalTests/Core/Exceptions/ApprovalMissingException.cs b/src/ApprovalTests/Core/Exceptions/ApprovalMissingException.cs index ecb6b81b..09f40f30 100644 --- a/src/ApprovalTests/Core/Exceptions/ApprovalMissingException.cs +++ b/src/ApprovalTests/Core/Exceptions/ApprovalMissingException.cs @@ -1,17 +1,7 @@ -using System.Runtime.Serialization; - namespace ApprovalTests.Core.Exceptions; -[Serializable] -public class ApprovalMissingException : ApprovalException +public class ApprovalMissingException(string received, string approved) : + ApprovalException(received, approved) { - public ApprovalMissingException(SerializationInfo info, StreamingContext context) : base(info, context) - { - } - - public ApprovalMissingException(string received, string approved) : base(received, approved) - { - } - public override string Message => $"Failed Approval: Approval File \"{Approved}\" Not Found."; } \ No newline at end of file