StartsWith Constraint
StartsWithConstraint tests for an initial string.
Constructor
StartsWithConstraint(string expected)
Syntax
Does.StartWith(string expected)
StartsWith(string expected)
Modifiers
...IgnoreCase
...Using(StringComparison comparisonType)
...Using(CultureInfo culture)
Examples of Use
string phrase = "Make your tests fail before passing!";
Assert.That(phrase, Does.StartWith("Make"));
Assert.That(phrase, Does.Not.StartWith("Break"));
Specifying a StringComparison
Assert.That("Hello World!", Does.StartWith("HELLO").Using(StringComparison.OrdinalIgnoreCase));
Assert.That("Hello World!", Does.StartWith("Hello").Using(StringComparison.Ordinal));
Specifying a CultureInfo
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("TITLE text", Does.StartWith("title").IgnoreCase.Using(new CultureInfo("tr-TR")));
// Culture-specific comparison without case-insensitivity
Assert.That("Straße Street", Does.StartWith("Straße").Using(new CultureInfo("de-DE")));
Notes
- StartsWith may appear only in the body of a constraint expression or when the inherited syntax is used.
- Only one
Usingmodifier may be specified. Attempting to use multipleUsingmodifiers will throw anInvalidOperationException.