MSTEST0032: Granska eller ta bort försäkran eftersom dess villkor är känt för att alltid vara sant
Property | Värde |
---|---|
Regel-ID | MSTEST0032 |
Title | Granska eller ta bort försäkran eftersom dess villkor är känt för att alltid vara sant. |
Kategori | Förbrukning |
Korrigeringen är icke-bakåtkompatibel | Icke-icke-bryta |
Aktiverad som standard | Ja |
Standard allvarlighetsgrad | Info |
Introducerad i version | 3.5.0 |
Finns det en kodkorrigering | Nej |
Orsak
Den här regeln genererar en diagnostik när ett anrop till en försäkran genererar ett villkor som alltid är sant.
Regelbeskrivning
När du stöter på en försäkran som alltid skickas (till exempel Assert.IsTrue(true)
), är det inte uppenbart för någon som läser koden varför försäkran finns där eller vilket villkor den försöker kontrollera. Detta kan leda till förvirring och bortkastad tid för utvecklare som stöter på koden senare.
Så här åtgärdar du överträdelser
Se till att anrop till Assert.IsTrue
, Assert.IsFalse
, Assert.AreEqual
, Assert.AreNotEqual
Assert.IsNull
eller Assert.IsNotNull
inte producerar villkor som alltid är sanna.
När du ska ignorera varningar
Vi rekommenderar inte att du utelämnar varningar från den här regeln.
Ignorera en varning
Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och aktiverar sedan regeln igen.
#pragma warning disable MSTEST0032
// The code that's violating the rule is on this line.
#pragma warning restore MSTEST0032
Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none
i konfigurationsfilen.
[*.{cs,vb}]
dotnet_diagnostic.MSTEST0032.severity = none
Mer information finns i Så här utelämnar du kodanalysvarningar.