From b6261d193deb23b49d1c84912676532871ca45a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Hulin?= Date: Fri, 1 Mar 2024 19:07:47 +0100 Subject: [PATCH 1/3] test: Fix assertion to reveal issue --- solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs b/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs index b795c8824..75e639514 100644 --- a/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs +++ b/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs @@ -1,3 +1,4 @@ +using FluentAssertions; using FluentAssertions.LanguageExt; using Xunit; @@ -22,7 +23,10 @@ public void Returns_Number_Representation(int input, string expectedResult) => Day14.LangExt.FizzBuzz .Convert(input) .Should() - .BeSome(expectedResult); + .BeSome() + .Which + .Should() + .Be(expectedResult); [Theory] [InlineData(0)] From b4cab6aae508f44c5a86b641540cb886a9292854 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Hulin?= Date: Fri, 1 Mar 2024 19:09:52 +0100 Subject: [PATCH 2/3] fix: Map doesn't preserve order. Usage of basic Dictionary --- solution/c#/Day14/Day14/LangExt/FizzBuzz.cs | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/solution/c#/Day14/Day14/LangExt/FizzBuzz.cs b/solution/c#/Day14/Day14/LangExt/FizzBuzz.cs index d04dee1ee..d6f4e3e4b 100644 --- a/solution/c#/Day14/Day14/LangExt/FizzBuzz.cs +++ b/solution/c#/Day14/Day14/LangExt/FizzBuzz.cs @@ -7,12 +7,13 @@ public static class FizzBuzz private const int Min = 1; private const int Max = 100; - private static readonly Map Mapping = - Map.create( - (15, "FizzBuzz"), - (3, "Fizz"), - (5, "Buzz") - ); + private static readonly Dictionary Mapping = + new() + { + { 15, "FizzBuzz" }, + { 3, "Fizz" }, + { 5, "Buzz" } + }; public static Option Convert(int input) => IsOutOfRange(input) From dd5b291e4f65d971870888edc78c65e3a41848c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Hulin?= Date: Fri, 1 Mar 2024 19:35:51 +0100 Subject: [PATCH 3/3] refactor: Simplify assertion with Be --- solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs | 4 ---- 1 file changed, 4 deletions(-) diff --git a/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs b/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs index 75e639514..7ee59399b 100644 --- a/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs +++ b/solution/c#/Day14/Day14.Tests/LangExt/FizzBuzzTests.cs @@ -1,4 +1,3 @@ -using FluentAssertions; using FluentAssertions.LanguageExt; using Xunit; @@ -23,9 +22,6 @@ public void Returns_Number_Representation(int input, string expectedResult) => Day14.LangExt.FizzBuzz .Convert(input) .Should() - .BeSome() - .Which - .Should() .Be(expectedResult); [Theory]