Udostępnij za pomocą


MSTEST0055: Nie ignoruj zwracanej wartości metod łańcuchowych

Majątek Wartość
Identyfikator reguły MSTEST0055
Tytuł Nie ignoruj wartości zwrotnej metod działających na ciągach znaków
Kategoria Usage
Poprawka jest przełomowa lub nieprzełomowa Non-breaking
Domyślnie włączone Tak
domyślna ciężkość Ostrzeżenie
wprowadzone w wersji 3.11.0
Czy istnieje poprawka kodu Nie.

Przyczyna

Wywołano metodę string.Contains, string.StartsWith lub string.EndsWith, a jej wartość zwracana została zignorowana.

Opis reguły

Metody te nie mają żadnych skutków ubocznych, a ignorowanie zwracanej wartości jest zawsze błędne. Jest bardziej prawdopodobne, że pierwotną intencją tych wywołań jest twierdzenie, że są prawdziwe.

Jak naprawić naruszenia

Przechwyć i użyj wartości zwracanej z metod operujących na ciągach znaków lub użyj właściwej metody asercji.

Na przykład zmień następujące elementy:

[TestMethod]
public void TestMethod()
{
    string value = "Hello world";
    value.StartsWith("Hello");
}

Do tego:

[TestMethod]
public void TestMethod()
{
    string value = "Hello world";
    Assert.IsTrue(value.StartsWith("Hello")); // or, Assert.StartsWith("Hello", value);
}

Kiedy pomijać ostrzeżenia

Nie pomijaj ostrzeżeń z tej reguły. Wywoływanie metod ciągów bez używania ich wartości zwracanej jest zawsze usterką lub martwym kodem.