SubstringConstraint
SubstringConstraint can test whether a string contains
the expected substring.
using System;
using System.Globalization;
using System.Runtime.CompilerServices;
namespace NUnit.Framework.Constraints
{
[System.Runtime.CompilerServices.NullableContext(1)]
[System.Runtime.CompilerServices.Nullable(0)]
public class SubstringConstraint : StringConstraint
{
public SubstringConstraint(string expected)
: base(expected)
{
descriptionText = "String containing";
}
public new SubstringConstraint Using(StringComparison comparisonType)
{
return (SubstringConstraint)base.Using(comparisonType);
}
[System.Runtime.CompilerServices.NullableContext(2)]
protected override bool Matches(string actual)
{
if (actual != null)
return actual.IndexOf(expected) >= 0;
return false;
}
[System.Runtime.CompilerServices.NullableContext(2)]
protected override bool Matches(string actual, StringComparison stringComparison)
{
if (actual != null)
return actual.IndexOf(expected, stringComparison) >= 0;
return false;
}
protected override bool Matches([System.Runtime.CompilerServices.Nullable(2)] string actual, CultureInfo cultureInfo)
{
if (actual != null)
return cultureInfo.CompareInfo.IndexOf(actual, expected, caseInsensitive ? CompareOptions.IgnoreCase : CompareOptions.None) >= 0;
return false;
}
}
}