<PackageReference Include="NUnit" Version="3.10.1" />

SubstringConstraint

SubstringConstraint can test whether a string contains the expected substring.
using System; namespace NUnit.Framework.Constraints { public class SubstringConstraint : StringConstraint { private StringComparison? comparisonType; public override StringConstraint IgnoreCase { get { Using(StringComparison.CurrentCultureIgnoreCase); return base.IgnoreCase; } } public SubstringConstraint(string expected) : base(expected) { descriptionText = "String containing"; } protected override bool Matches(string actual) { if (actual == null) return false; StringComparison stringComparison = comparisonType ?? StringComparison.CurrentCulture; return actual.IndexOf(expected, stringComparison) >= 0; } public SubstringConstraint Using(StringComparison comparisonType) { if (!this.comparisonType.HasValue) this.comparisonType = comparisonType; else if (this.comparisonType != comparisonType) { throw new InvalidOperationException("A different comparison type was already set."); } return this; } } }