Merge pull request 'chore(sonar): clear residual 24 test-file smells' (#17) from fix/sonarqube-tests-residual into main
SonarQube Analysis / sonarqube (push) Successful in 2m59s

Reviewed-on: #17
This commit was merged in pull request #17.
This commit is contained in:
2026-05-27 15:36:32 -05:00
12 changed files with 23 additions and 23 deletions
@@ -110,7 +110,7 @@ public class LinqQueryBreakdownWithClauseTests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(valueKey, Is.Not.Null, "Should have a Value parameter"); Assert.That(valueKey, Is.Not.Null, "Should have a Value parameter");
Assert.That(merged[valueKey], Is.EqualTo("main_value"), "Main query parameter should take precedence"); Assert.That(merged[valueKey!], Is.EqualTo("main_value"), "Main query parameter should take precedence");
}); });
} }
@@ -236,7 +236,7 @@ public class QueryComparatorTests
var comparator = QueryComparator.Compare(query1, query2); var comparator = QueryComparator.Compare(query1, query2);
// Assert // Assert
Assert.That(comparator.Differences.Count, Is.GreaterThan(2)); Assert.That(comparator.Differences, Has.Count.GreaterThan(2));
Assert.That(comparator.Differences, Does.Contain("SELECT clauses differ")); Assert.That(comparator.Differences, Does.Contain("SELECT clauses differ"));
Assert.That(comparator.Differences, Does.Contain("FROM clauses differ")); Assert.That(comparator.Differences, Does.Contain("FROM clauses differ"));
} }
@@ -495,7 +495,7 @@ public class QueryValidatorTests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
// Assert // Assert
Assert.That(validator.Issues.Count, Is.GreaterThan(1)); Assert.That(validator.Issues, Has.Count.GreaterThan(1));
Assert.That(validator.HasWarnings, Is.True); Assert.That(validator.HasWarnings, Is.True);
}); });
} }
@@ -114,7 +114,7 @@ public class ExpressionGeneratorTests
Assert.That(result, Does.Contain("## Mermaid Diagram")); Assert.That(result, Does.Contain("## Mermaid Diagram"));
Assert.That(result, Does.Contain("## Mathematical Expression")); Assert.That(result, Does.Contain("## Mathematical Expression"));
Assert.That(result, Does.Contain("Arithmetic")); Assert.That(result, Does.Contain("Arithmetic"));
Assert.That(result.Length, Is.GreaterThan(200)); Assert.That(result, Has.Length.GreaterThan(200));
} }
[Test] [Test]
@@ -84,7 +84,7 @@ public class QueryBreakdownGeneratorTests
Assert.That(result, Is.Not.Null); Assert.That(result, Is.Not.Null);
Assert.That(result, Does.Contain("mermaid")); Assert.That(result, Does.Contain("mermaid"));
Assert.That(result, Does.Contain("SELECT")); Assert.That(result, Does.Contain("SELECT"));
Assert.That(result.Length, Is.GreaterThan(100)); Assert.That(result, Has.Length.GreaterThan(100));
} }
[Test] [Test]
@@ -162,7 +162,7 @@ public class QueryBreakdownTests
queryBreakdown.AddParameter("param3", new DateTime(2025, 1, 1)); queryBreakdown.AddParameter("param3", new DateTime(2025, 1, 1));
// Assert // Assert
Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThanOrEqualTo(3)); Assert.That(queryBreakdown.Parameters, Has.Count.GreaterThanOrEqualTo(3));
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(queryBreakdown.Parameters.ContainsKey("param1"), Is.True); Assert.That(queryBreakdown.Parameters.ContainsKey("param1"), Is.True);
@@ -248,7 +248,7 @@ public class QueryBreakdownTests
var queryBreakdown = QueryBreakdown.Parse(sql); var queryBreakdown = QueryBreakdown.Parse(sql);
// Assert // Assert
Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThanOrEqualTo(0)); Assert.That(queryBreakdown.Parameters, Has.Count.GreaterThanOrEqualTo(0));
} }
[Test] [Test]
@@ -488,7 +488,7 @@ public class QueryBreakdownTests
// Assert // Assert
// PostgreSQL stores parameters with positional and name-based formats // PostgreSQL stores parameters with positional and name-based formats
Assert.That(merged.Count, Is.GreaterThanOrEqualTo(2)); Assert.That(merged, Has.Count.GreaterThanOrEqualTo(2));
var keys = merged.Keys.ToList(); var keys = merged.Keys.ToList();
Assert.Multiple(() => Assert.Multiple(() =>
{ {
@@ -568,7 +568,7 @@ public class QueryBreakdownTests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(userIdKey, Is.Not.Null); Assert.That(userIdKey, Is.Not.Null);
Assert.That(merged[userIdKey], Is.EqualTo(123)); // Main query value, not CTE value Assert.That(merged[userIdKey!], Is.EqualTo(123)); // Main query value, not CTE value
}); });
} }
@@ -623,13 +623,13 @@ public class QueryBreakdownTests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(dateKey, Is.Not.Null); Assert.That(dateKey, Is.Not.Null);
Assert.That(merged[dateKey], Is.TypeOf<DateTime>()); Assert.That(merged[dateKey!], Is.TypeOf<DateTime>());
Assert.That(boolKey, Is.Not.Null); Assert.That(boolKey, Is.Not.Null);
Assert.That(merged[boolKey], Is.TypeOf<bool>()); Assert.That(merged[boolKey!], Is.TypeOf<bool>());
Assert.That(doubleKey, Is.Not.Null); Assert.That(doubleKey, Is.Not.Null);
Assert.That(merged[doubleKey], Is.TypeOf<double>()); Assert.That(merged[doubleKey!], Is.TypeOf<double>());
}); });
} }
@@ -185,7 +185,7 @@ public class RecursiveCTETests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(statusKey, Is.Not.Null); Assert.That(statusKey, Is.Not.Null);
Assert.That(merged[statusKey], Is.EqualTo("active"), "Main query parameter should take precedence"); Assert.That(merged[statusKey!], Is.EqualTo("active"), "Main query parameter should take precedence");
}); });
} }
@@ -121,7 +121,7 @@ public class StatementReaderTests
// Assert // Assert
var identifierTokens = tokens.Where(t => t.Type == TokenType.ColumnIdentifier).ToList(); var identifierTokens = tokens.Where(t => t.Type == TokenType.ColumnIdentifier).ToList();
Assert.That(identifierTokens.Count, Is.GreaterThanOrEqualTo(2)); Assert.That(identifierTokens, Has.Count.GreaterThanOrEqualTo(2));
} }
[Test] [Test]
@@ -210,7 +210,7 @@ public class StatementReaderTests
// Assert // Assert
var stringTokens = tokens.Where(t => t.Type == TokenType.String).ToList(); var stringTokens = tokens.Where(t => t.Type == TokenType.String).ToList();
Assert.That(stringTokens.Count, Is.GreaterThanOrEqualTo(2)); Assert.That(stringTokens, Has.Count.GreaterThanOrEqualTo(2));
} }
[Test] [Test]
@@ -383,7 +383,7 @@ public class QueryBreakdownTests
// Assert // Assert
// Snowflake stores parameters in both @ and : formats, so count is doubled // Snowflake stores parameters in both @ and : formats, so count is doubled
Assert.That(merged.Count, Is.GreaterThanOrEqualTo(2)); Assert.That(merged, Has.Count.GreaterThanOrEqualTo(2));
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(merged.ContainsKey("@UserId") || merged.ContainsKey(":UserId"), Is.True); Assert.That(merged.ContainsKey("@UserId") || merged.ContainsKey(":UserId"), Is.True);
@@ -1041,7 +1041,7 @@ public class QueryBreakdownTests
var queryBreakdown = QueryBreakdown.Parse(sql, false); var queryBreakdown = QueryBreakdown.Parse(sql, false);
// Assert // Assert
Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThanOrEqualTo(5)); Assert.That(queryBreakdown.Parameters, Has.Count.GreaterThanOrEqualTo(5));
Assert.That(queryBreakdown.Parameters, Does.ContainKey(":userId")); Assert.That(queryBreakdown.Parameters, Does.ContainKey(":userId"));
Assert.That(queryBreakdown.Parameters, Does.ContainKey(":startDate")); Assert.That(queryBreakdown.Parameters, Does.ContainKey(":startDate"));
Assert.That(queryBreakdown.Parameters, Does.ContainKey(":endDate")); Assert.That(queryBreakdown.Parameters, Does.ContainKey(":endDate"));
@@ -1156,7 +1156,7 @@ public class QueryBreakdownTests
// Assert // Assert
Assert.That(sql, Does.Contain("CTE_0 AS (")); Assert.That(sql, Does.Contain("CTE_0 AS ("));
Assert.That(sql, Does.Contain("CTE_14 AS (")); Assert.That(sql, Does.Contain("CTE_14 AS ("));
Assert.That(sql.Length, Is.GreaterThan(1000)); Assert.That(sql, Has.Length.GreaterThan(1000));
} }
#endregion #endregion
@@ -1323,7 +1323,7 @@ public class QueryBreakdownTests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(sql, Does.Contain("LIMIT 100")); Assert.That(sql, Does.Contain("LIMIT 100"));
Assert.That(mainQueryBreakdown.Parameters.Count, Is.GreaterThanOrEqualTo(2)); Assert.That(mainQueryBreakdown.Parameters, Has.Count.GreaterThanOrEqualTo(2));
}); });
} }
@@ -2069,7 +2069,7 @@ public class QueryBreakdownTests
query.AddWhereClause("CREATED_DATE > :StartDate", "and", false); query.AddWhereClause("CREATED_DATE > :StartDate", "and", false);
// Assert // Assert
Assert.That(query.Parameters.Count, Is.GreaterThanOrEqualTo(3)); Assert.That(query.Parameters, Has.Count.GreaterThanOrEqualTo(3));
Assert.That(query.Parameters, Does.ContainKey(":UserId")); Assert.That(query.Parameters, Does.ContainKey(":UserId"));
Assert.That(query.Parameters, Does.ContainKey(":Status")); Assert.That(query.Parameters, Does.ContainKey(":Status"));
Assert.That(query.Parameters, Does.ContainKey(":StartDate")); Assert.That(query.Parameters, Does.ContainKey(":StartDate"));
@@ -185,7 +185,7 @@ public class RecursiveCTETests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(statusKey, Is.Not.Null); Assert.That(statusKey, Is.Not.Null);
Assert.That(merged[statusKey], Is.EqualTo("active"), "Main query parameter should take precedence"); Assert.That(merged[statusKey!], Is.EqualTo("active"), "Main query parameter should take precedence");
}); });
} }
@@ -32,7 +32,7 @@ public class JsonTokenReaderTests
Assert.That(tokens, Is.Not.Empty); Assert.That(tokens, Is.Not.Empty);
// Validate JSON starts with StartObject and ends with EndObject // Validate JSON starts with StartObject and ends with EndObject
Assert.That(tokens.Count, Is.GreaterThan(2)); Assert.That(tokens, Has.Count.GreaterThan(2));
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(tokens[0].Type, Is.EqualTo(JsonTokenType.StartObject)); Assert.That(tokens[0].Type, Is.EqualTo(JsonTokenType.StartObject));
@@ -184,7 +184,7 @@ public class RecursiveCTETests
Assert.Multiple(() => Assert.Multiple(() =>
{ {
Assert.That(statusKey, Is.Not.Null); Assert.That(statusKey, Is.Not.Null);
Assert.That(merged[statusKey], Is.EqualTo("active"), "Main query parameter should take precedence"); Assert.That(merged[statusKey!], Is.EqualTo("active"), "Main query parameter should take precedence");
}); });
} }