docs/articles/nunit/writing-tests/constraints/SubstringConstraint.md
SubstringConstraint tests for a substring.
SubstringConstraint(string expected)
Does.Contain(string expected)
...IgnoreCase
...Using(StringComparison comparisonType)
...Using(CultureInfo culture)
[!code-csharpStringConstraintExamples]
Assert.That("Hello World!", Does.Contain("WORLD").Using(StringComparison.OrdinalIgnoreCase));
Assert.That("Hello World!", Does.Contain("World").Using(StringComparison.Ordinal));
The Using(CultureInfo) modifier allows for culture-specific string comparisons.
It can be combined with .IgnoreCase for case-insensitive culture-aware comparisons:
// Using Turkish culture where 'i' and 'I' have special casing rules
Assert.That("Hello TITLE World", Does.Contain("title").IgnoreCase.Using(new CultureInfo("tr-TR")));
// Culture-specific comparison without case-insensitivity
Assert.That("Straße Street", Does.Contain("Straße").Using(new CultureInfo("de-DE")));
Using modifier may be specified. Attempting to use multiple Using modifiers
will throw an InvalidOperationException.