From db3d26e298da07a9ae33c73387a792974006a2c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valentin=20Breu=C3=9F?= Date: Sun, 18 Jan 2026 10:24:10 +0100 Subject: [PATCH] feat: add implicit conversion to `Times` --- Source/aweXpect.Core/Core/Times.cs | 8 ++++++++ .../Expected/aweXpect.Core_net10.0.txt | 1 + .../Expected/aweXpect.Core_net8.0.txt | 1 + .../Expected/aweXpect.Core_netstandard2.0.txt | 1 + Tests/aweXpect.Core.Tests/Core/TimesTests.cs | 16 ++++++++++++++++ 5 files changed, 27 insertions(+) create mode 100644 Tests/aweXpect.Core.Tests/Core/TimesTests.cs diff --git a/Source/aweXpect.Core/Core/Times.cs b/Source/aweXpect.Core/Core/Times.cs index d2091a6ae..189441799 100644 --- a/Source/aweXpect.Core/Core/Times.cs +++ b/Source/aweXpect.Core/Core/Times.cs @@ -17,4 +17,12 @@ public static implicit operator Times(int value) { return new Times(value); } + + /// + /// Implicitly convert the to an . + /// + public static implicit operator int(Times value) + { + return value.Value; + } } diff --git a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net10.0.txt b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net10.0.txt index 453cec765..9b8d76871 100644 --- a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net10.0.txt +++ b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net10.0.txt @@ -351,6 +351,7 @@ namespace aweXpect.Core { public Times(int value) { } public int Value { get; } + public static int op_Implicit(aweXpect.Core.Times value) { } public static aweXpect.Core.Times op_Implicit(int value) { } } public static class TimesExtensions diff --git a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt index 6fd7fddb0..58b2a6a04 100644 --- a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt +++ b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_net8.0.txt @@ -351,6 +351,7 @@ namespace aweXpect.Core { public Times(int value) { } public int Value { get; } + public static int op_Implicit(aweXpect.Core.Times value) { } public static aweXpect.Core.Times op_Implicit(int value) { } } public static class TimesExtensions diff --git a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt index 99ca0bae9..79d2dd06c 100644 --- a/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt +++ b/Tests/aweXpect.Core.Api.Tests/Expected/aweXpect.Core_netstandard2.0.txt @@ -337,6 +337,7 @@ namespace aweXpect.Core { public Times(int value) { } public int Value { get; } + public static int op_Implicit(aweXpect.Core.Times value) { } public static aweXpect.Core.Times op_Implicit(int value) { } } public static class TimesExtensions diff --git a/Tests/aweXpect.Core.Tests/Core/TimesTests.cs b/Tests/aweXpect.Core.Tests/Core/TimesTests.cs new file mode 100644 index 000000000..fefa10c7b --- /dev/null +++ b/Tests/aweXpect.Core.Tests/Core/TimesTests.cs @@ -0,0 +1,16 @@ +namespace aweXpect.Core.Tests.Core; + +public class TimesTests +{ + [Fact] + public async Task ImplicitConversion_ShouldWorkAsExpected() + { + int expectedValue = 5; + + Times times = expectedValue; + int actualValue = times; + + await That(times.Value).IsEqualTo(expectedValue); + await That(actualValue).IsEqualTo(expectedValue); + } +}