Testing lists for equality gives unpleasant failure report
[ 77 ] |> shouldEqual [ 99 ]
reports the failure
Unhandled exception. NUnit.Framework.AssertionException: Assert.That(, ) Expected: < 99 > or < 99 > But was: < 77 >
This is caused by this tricky code in Equality.fs:
static member inline IsEqualTo(x: 'T) =
match (box x) with
| :? IStructuralEquatable -> Is.EqualTo(x).Or.EqualTo(x).Using<'T>(Equality.Structural)
| :? IStructuralComparable -> Is.EqualTo(x).Or.EqualTo(x).Using<'T>(Equality.StructuralC)
| _ -> Is.EqualTo(x)
(I did not succeed fixing this, removing the Or constraints leads to no detailed list comparison.)
Hi @snuup, I'm looking into it.
Hi @snuup,
I found out that this is the most precise code regarding the failure message.
The message blocks changed slightly since NUnit v4.
Thx for your efforts. From a user perspective the message is irritating. Certainly not a show stopper, more a somewhat serious cosmetic issue.
Yea, I let this open here. Perhaps, someone/I find a way to change this.