λ1203: Prefer the assertion on Assert over FunctionalAssert
Since Funcky.Xunit 2.3.0 and Funcky.Xunit.v3 1.1.0 the assertions of FunctionalAssert are also static extension
members of xunit's Assert: FunctionalAssert.Some(option) is Assert.Some(option), found where the other
assertions live.
Cause
A method of FunctionalAssert is called, the file is compiled as C# 14 or later, and AssertExtensions from a
Funcky.Xunit package that has the Assert members is referenced.
Reason for rule
One Assert class for every assertion in a test is easier to discover and to read than two, and the rule is the upgrade
path should a later major version retire FunctionalAssert.
How to fix violations
Replace the FunctionalAssert receiver with Assert. The code fix does this, keeps the arguments and type arguments,
and adds using Funcky.Extensions; when the extension members are not in scope yet. It supports fix-all.
Examples
Disallowed
FunctionalAssert.Some(42, option);
var value = FunctionalAssert.Ok(result);
Allowed
Assert.Some(42, option);
var value = Assert.Ok(result);