Files
codeql/csharp/ql/test/query-tests/Nullness/GuardedString.cs
Tom Hvitved d2a431e6f3 C#: Add more nullness tests
Port many of the nullness test from Java, as well as add new tests.
2018-11-30 17:02:05 +01:00

40 lines
851 B
C#

using System;
class GuardedStringTest
{
void Fn(bool b)
{
string s = b ? null : "";
if (!string.IsNullOrEmpty(s))
{
Console.WriteLine(s.Length);
}
if (!string.IsNullOrWhiteSpace(s))
{
Console.WriteLine(s.Length);
}
if (s?.Length == 0)
Console.WriteLine(s.Length); // GOOD
if (s?.Length > 0)
Console.WriteLine(s.Length); // GOOD
if (s?.Length >= 0)
Console.WriteLine(s.Length); // GOOD
if (s?.Length < 10)
Console.WriteLine(s.Length); // GOOD
if (s?.Length <= 10)
Console.WriteLine(s.Length); // GOOD
if (s?.Length != 0)
Console.WriteLine(s.Length); // BAD (maybe)
else
Console.WriteLine(s.Length); // GOOD
}
}