v2
v3
Warning
xUnit2017
"Do not use Contains() to check if a value exists in a collection"
Cause
A violation of this rule occurs when Enumerable.Contains()
is used to check if a value exists in a collection.
Reason for rule
There are specialized assertions for checking for elements in collections.
How to fix violations
Use Assert.Contains
or Assert.DoesNotContain
instead.
Examples
Violates
using System.Linq;
using Xunit;
public class xUnit2017
{
[Fact]
public void TestMethod()
{
var result = new[] { "foo", "bar" };
Assert.True(result.Contains("foo"));
}
}
Does not violate
using Xunit;
public class xUnit2017
{
[Fact]
public void TestMethod()
{
var result = new[] { "foo", "bar" };
Assert.Contains("foo", result);
}
}