From 4fe9eb36e65044da49494fe41e7cefa7e8d18e2c Mon Sep 17 00:00:00 2001 From: Thom Lamb Date: Wed, 27 May 2026 12:14:13 -0500 Subject: [PATCH] =?UTF-8?q?chore(sonar):=20second=20sweep=20=E2=80=94=20ca?= =?UTF-8?q?tch=20.Length,=20Is.Not.Empty,=20and=20newly-exposed=20Multiple?= =?UTF-8?q?=20groups=20(NUnit2046,=20NUnit2045)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-runs `dotnet format analyzers --diagnostics NUnit2046 NUnit2045` after the Tier 2 Assert.Multiple wrap, which exposed: - `Has.Length.EqualTo(n)` rewrites for `string[]`/array `.Length` checks (the first pass only knew about `.Count`). - `Is.Not.Empty` rewrites for `Count, Is.GreaterThan(0)`. - A handful of new NUnit2045 groups that became wrappable once the initial Multiple blocks settled the surrounding indentation. Tests still 1180/1180 passing. Co-Authored-By: Claude Opus 4.7 (1M context) --- .../QueryCollectionAnalyzerTests.cs | 2 +- .../QueryValidatorTests.cs | 2 +- .../QueryBreakdownCollectionTests.cs | 6 +++--- .../PostgreSql/QueryBreakdownTests.cs | 2 +- .../PostgreSql/StatementReaderTests.cs | 8 +++---- .../QueryBreakdownCollectionTests.cs | 2 +- .../Snowflake/QueryBreakdownTests.cs | 21 +++++++++++-------- .../ExpressionTests/DateFunctionTests.cs | 2 +- .../ExpressionFactoryFilterTests.cs | 2 +- .../GenericColumnExpressionTests.cs | 5 ++--- .../JsonTokenReaderTests.cs | 7 +++++-- .../SqlBreakdownCollectionCreateTests.cs | 2 +- .../SqlBreakdownCollectionDeleteTests.cs | 2 +- .../SqlBreakdownCollectionSelectTests.cs | 2 +- .../SqlBreakdownCollectionTransactionTests.cs | 2 +- .../SqlBreakdownCollectionUpdateTests.cs | 2 +- .../QueryBreakdownCollectionTests.cs | 2 +- .../SqlServer/QueryBreakdownTests.cs | 18 ++++++++++------ 18 files changed, 50 insertions(+), 39 deletions(-) diff --git a/tests/Strata.SqlTools.LinqToSql.Tests/QueryCollectionAnalyzerTests.cs b/tests/Strata.SqlTools.LinqToSql.Tests/QueryCollectionAnalyzerTests.cs index 2565e5a..0f2b2df 100644 --- a/tests/Strata.SqlTools.LinqToSql.Tests/QueryCollectionAnalyzerTests.cs +++ b/tests/Strata.SqlTools.LinqToSql.Tests/QueryCollectionAnalyzerTests.cs @@ -406,7 +406,7 @@ public class QueryCollectionAnalyzerTests var similar = analyzer.FindSimilarQueries(0.5); // Lower threshold for testing // Assert - Assert.That(similar.Count, Is.GreaterThan(0)); + Assert.That(similar, Is.Not.Empty); } [Test] diff --git a/tests/Strata.SqlTools.LinqToSql.Tests/QueryValidatorTests.cs b/tests/Strata.SqlTools.LinqToSql.Tests/QueryValidatorTests.cs index 3c49fd0..ec905ae 100644 --- a/tests/Strata.SqlTools.LinqToSql.Tests/QueryValidatorTests.cs +++ b/tests/Strata.SqlTools.LinqToSql.Tests/QueryValidatorTests.cs @@ -550,7 +550,7 @@ public class QueryValidatorTests // Assert Assert.That(validator, Is.Not.Null); - Assert.That(validator.Issues.Count, Is.GreaterThan(0)); + Assert.That(validator.Issues, Is.Not.Empty); } #endregion diff --git a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownCollectionTests.cs b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownCollectionTests.cs index 0d48c3e..8d3e0d9 100644 --- a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownCollectionTests.cs +++ b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownCollectionTests.cs @@ -39,7 +39,7 @@ public class QueryBreakdownCollectionTests _collection.Add(query); // Assert - Assert.That(_collection.Count, Is.GreaterThan(0)); + Assert.That(_collection, Is.Not.Empty); } [Test] @@ -186,7 +186,7 @@ public class QueryBreakdownCollectionTests { // Assert Assert.That(result, Is.True); - Assert.That(_collection.Count, Is.GreaterThan(0)); + Assert.That(_collection, Is.Not.Empty); }); } @@ -206,7 +206,7 @@ public class QueryBreakdownCollectionTests { // Assert Assert.That(result, Is.True); - Assert.That(_collection.Count, Is.GreaterThan(0)); + Assert.That(_collection, Is.Not.Empty); }); } diff --git a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownTests.cs b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownTests.cs index 9d10aae..7191785 100644 --- a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownTests.cs +++ b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/QueryBreakdownTests.cs @@ -182,7 +182,7 @@ public class QueryBreakdownTests // Assert // The @ prefix is stripped - Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThan(0)); + Assert.That(queryBreakdown.Parameters, Is.Not.Empty); } #endregion diff --git a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/StatementReaderTests.cs b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/StatementReaderTests.cs index c0d1449..285ec9a 100644 --- a/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/StatementReaderTests.cs +++ b/tests/Strata.SqlTools.PostgreSql.Tests/PostgreSql/StatementReaderTests.cs @@ -95,7 +95,7 @@ public class StatementReaderTests } // Assert - Assert.That(tokens.Count, Is.GreaterThan(0)); + Assert.That(tokens, Is.Not.Empty); var paramTokens = tokens.Where(t => t.Type == TokenType.Parameter).ToList(); Assert.That(paramTokens, Has.Count.EqualTo(2)); Assert.Multiple(() => @@ -173,7 +173,7 @@ public class StatementReaderTests } // Assert - Assert.That(tokens.Count, Is.GreaterThan(0)); + Assert.That(tokens, Is.Not.Empty); } [Test] @@ -191,7 +191,7 @@ public class StatementReaderTests } // Assert - Assert.That(tokens.Count, Is.GreaterThan(0)); + Assert.That(tokens, Is.Not.Empty); } [Test] @@ -229,6 +229,6 @@ public class StatementReaderTests // Assert var numberTokens = tokens.Where(t => t.Type == TokenType.Number).ToList(); - Assert.That(numberTokens.Count, Is.GreaterThan(0)); + Assert.That(numberTokens, Is.Not.Empty); } } diff --git a/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownCollectionTests.cs b/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownCollectionTests.cs index a476455..304a86d 100644 --- a/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownCollectionTests.cs +++ b/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownCollectionTests.cs @@ -247,7 +247,7 @@ public class QueryBreakdownCollectionTests var report = _collection.GetParameterUsageReport().ToList(); // Assert - Assert.That(report.Count, Is.GreaterThan(0)); + Assert.That(report, Is.Not.Empty); var userIdReport = report.FirstOrDefault(r => r.ParameterName == "UserId"); Assert.That(userIdReport, Is.Not.Null); Assert.That(userIdReport?.UsedInQueryCount, Is.EqualTo(2)); diff --git a/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownTests.cs b/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownTests.cs index 090d8da..acbbc08 100644 --- a/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownTests.cs +++ b/tests/Strata.SqlTools.Snowflake.Tests/Snowflake/QueryBreakdownTests.cs @@ -127,7 +127,7 @@ public class QueryBreakdownTests // Verify 4-space Snowflake indentation var lines = sql.Split(separator, StringSplitOptions.RemoveEmptyEntries); var indentedLines = lines.Where(l => l.StartsWith(" ")).ToList(); - Assert.That(indentedLines.Count, Is.GreaterThan(0)); + Assert.That(indentedLines, Is.Not.Empty); } [Test] @@ -306,10 +306,13 @@ public class QueryBreakdownTests Assert.That(withIndex, Is.GreaterThan(-1)); Assert.That(mainSelectIndex, Is.GreaterThan(-1)); }); - Assert.That(withIndex, Is.LessThan(mainSelectIndex)); + Assert.Multiple(() => + { + Assert.That(withIndex, Is.LessThan(mainSelectIndex)); - // Assert - Verify CTE definition - Assert.That(sql, Does.Contain("PRODUCT_TOTALS")); + // Assert - Verify CTE definition + Assert.That(sql, Does.Contain("PRODUCT_TOTALS")); + }); Assert.That(sql, Does.Contain("AS")); Assert.That(sql, Does.Contain("PRODUCT_ID")); Assert.That(sql, Does.Contain("TOTAL_QUANTITY")); @@ -457,7 +460,7 @@ public class QueryBreakdownTests // Assert // Main query value should win var keys = merged.Keys.Where(k => k.Contains("QueryLimit")).ToList(); - Assert.That(keys.Count, Is.GreaterThan(0)); + Assert.That(keys, Is.Not.Empty); // All QueryLimit entries should be 100 (main query's value) foreach (var key in keys) { @@ -614,7 +617,7 @@ public class QueryBreakdownTests var queryBreakdown = QueryBreakdown.Parse(sql, false); // Assert - Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThan(0)); + Assert.That(queryBreakdown.Parameters, Is.Not.Empty); } [Test] @@ -1070,7 +1073,7 @@ public class QueryBreakdownTests // Assert // Base class normalizes to @, but Snowflake might handle differently - Assert.That(queryBreakdown.Parameters.Count, Is.GreaterThan(0)); + Assert.That(queryBreakdown.Parameters, Is.Not.Empty); } #endregion @@ -1188,7 +1191,7 @@ public class QueryBreakdownTests // Assert - Snowflake should use 4-space indent, base uses 5-space var snowflakeLines = snowflakeSql.Split(separator, StringSplitOptions.RemoveEmptyEntries); var snowflakeIndentedLines = snowflakeLines.Where(l => l.StartsWith(" ") && !l.StartsWith(" ")).ToList(); - Assert.That(snowflakeIndentedLines.Count, Is.GreaterThan(0), "Snowflake should use 4-space indentation"); + Assert.That(snowflakeIndentedLines, Is.Not.Empty, "Snowflake should use 4-space indentation"); } #endregion @@ -1407,7 +1410,7 @@ public class QueryBreakdownTests // Verify Snowflake-style formatting (4-space indentation) var lines = snowflakeSql.Split(separator, StringSplitOptions.RemoveEmptyEntries); var indentedLines = lines.Where(l => l.StartsWith(" ")).ToList(); - Assert.That(indentedLines.Count, Is.GreaterThan(0), "Should have Snowflake-style indentation"); + Assert.That(indentedLines, Is.Not.Empty, "Should have Snowflake-style indentation"); } [Test] diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/DateFunctionTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/DateFunctionTests.cs index fc24bdd..346c830 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/DateFunctionTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/DateFunctionTests.cs @@ -27,7 +27,7 @@ public class DateFunctionTests : ExpressionTestsBase { var sql = (string)result; Assert.That(sql, Is.Not.Null); - Assert.That(sql.Length, Is.GreaterThan(0)); + Assert.That(sql, Is.Not.Empty); Assert.That(sql, Is.EqualTo("DATE_TRUNC('month', DATEADD('month', 6, PES.DISCHARGE_DATE))")); return true; } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/ExpressionFactoryFilterTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/ExpressionFactoryFilterTests.cs index 1fed843..11222be 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/ExpressionFactoryFilterTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/ExpressionFactoryFilterTests.cs @@ -52,7 +52,7 @@ public class ExpressionFactoryFilterTests : ExpressionTestsBase // Assert Assert.That(result, Is.Not.Null); - Assert.That(result.Length, Is.GreaterThan(0)); + Assert.That(result, Is.Not.Empty); Assert.That(result, Is.EqualTo(expectedSql)); } } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/GenericColumnExpressionTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/GenericColumnExpressionTests.cs index 36947a4..e774296 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/GenericColumnExpressionTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/ExpressionTests/GenericColumnExpressionTests.cs @@ -65,9 +65,8 @@ public class GenericColumnExpressionTests : ExpressionTestsBase Assertions = result => { var results = (Dictionary)result; - Assert.That(results["priceCondition"], Does.Contain("Price")); - Assert.That(results["priceCondition"], Does.Contain("100")); - Assert.That(results["categoryCondition"], Does.Contain("Category")); + Assert.That(results["priceCondition"], Does.Contain("Price")); Assert.Multiple(() => { Assert.That(results["priceCondition"], Does.Contain("100")); + Assert.That(results["categoryCondition"], Does.Contain("Category")); }); Assert.That(results["categoryCondition"], Does.Contain("Electronics")); return true; } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/JsonTokenReaderTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/JsonTokenReaderTests.cs index 856d3d5..8fc95f3 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/JsonTokenReaderTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/JsonTokenReaderTests.cs @@ -57,8 +57,11 @@ public class JsonTokenReaderTests Assert.That(tokens[tokenIndex].Type, Is.EqualTo(JsonTokenType.Number)); Assert.That(tokens[tokenIndex++].Value, Is.EqualTo("1")); }); - Assert.That(tokens[tokenIndex].Type, Is.EqualTo(JsonTokenType.Number)); - Assert.That(tokens[tokenIndex++].Value, Is.EqualTo("2")); + Assert.Multiple(() => + { + Assert.That(tokens[tokenIndex].Type, Is.EqualTo(JsonTokenType.Number)); + Assert.That(tokens[tokenIndex++].Value, Is.EqualTo("2")); + }); Assert.That(tokens[tokenIndex].Type, Is.EqualTo(JsonTokenType.Number)); Assert.That(tokens[tokenIndex++].Value, Is.EqualTo("3")); Assert.That(tokens[tokenIndex].Type, Is.EqualTo(JsonTokenType.Number)); diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionCreateTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionCreateTests.cs index a88ed5e..35d9750 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionCreateTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionCreateTests.cs @@ -80,7 +80,7 @@ public class SqlBreakdownCollectionCreateTests : SqlBreakdownCollectionTestBase collection.ParseBatch(batchSql); // Assert - Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1)); + Assert.That(collection, Is.Not.Empty); Assert.That(collection.GetRawStatementAt(0), Does.Contain("CREATE PROCEDURE")); } } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionDeleteTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionDeleteTests.cs index 38370cd..22c3572 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionDeleteTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionDeleteTests.cs @@ -71,7 +71,7 @@ public class SqlBreakdownCollectionDeleteTests : SqlBreakdownCollectionTestBase collection.ParseBatch(batchSql); // Assert - Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1)); + Assert.That(collection, Is.Not.Empty); Assert.That(collection.GetRawStatementAt(0), Does.Contain("DELETE Orders")); Assert.That(collection.GetRawStatementAt(0), Does.Contain("INNER JOIN")); } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionSelectTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionSelectTests.cs index 6dab82b..24b6e45 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionSelectTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionSelectTests.cs @@ -58,7 +58,7 @@ public class SqlBreakdownCollectionSelectTests : SqlBreakdownCollectionTestBase collection.ParseBatch(batchSql); // Assert - Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1)); + Assert.That(collection, Is.Not.Empty); Assert.That(collection.GetRawStatementAt(0), Does.Contain("WITH UserOrders AS")); } diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionTransactionTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionTransactionTests.cs index 00909e4..8aa47a2 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionTransactionTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionTransactionTests.cs @@ -29,7 +29,7 @@ public class SqlBreakdownCollectionTransactionTests : SqlBreakdownCollectionTest collection.ParseBatch(batchSql); // Assert - Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1)); + Assert.That(collection, Is.Not.Empty); var statement = collection.GetRawStatementAt(0); Assert.That(statement, Does.Contain("BEGIN TRANSACTION")); Assert.That(statement, Does.Contain("COMMIT")); diff --git a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionUpdateTests.cs b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionUpdateTests.cs index 430d8b8..45429b9 100644 --- a/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionUpdateTests.cs +++ b/tests/Strata.SqlTools.SqlBreakdown.Tests/SqlBreakdownCollectionTests/SqlBreakdownCollectionUpdateTests.cs @@ -80,7 +80,7 @@ public class SqlBreakdownCollectionUpdateTests : SqlBreakdownCollectionTestBase collection.ParseBatch(batchSql); // Assert - Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1)); + Assert.That(collection, Is.Not.Empty); Assert.That(collection.GetRawStatementAt(0), Does.Contain("UPDATE Orders")); Assert.That(collection.GetRawStatementAt(0), Does.Contain("JOIN")); } diff --git a/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownCollectionTests.cs b/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownCollectionTests.cs index 660c016..b43f595 100644 --- a/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownCollectionTests.cs +++ b/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownCollectionTests.cs @@ -360,7 +360,7 @@ public class QueryBreakdownCollectionTests var report = _collection.GetParameterUsageReport().ToList(); // Assert - Assert.That(report.Count, Is.GreaterThan(0)); + Assert.That(report, Is.Not.Empty); var userIdReport = report.FirstOrDefault(r => r.ParameterName == "UserId"); Assert.That(userIdReport, Is.Not.Null); Assert.That(userIdReport?.UsedInQueryCount, Is.EqualTo(2)); diff --git a/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownTests.cs b/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownTests.cs index 0ec2a87..d4390bb 100644 --- a/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownTests.cs +++ b/tests/Strata.SqlTools.SqlServer.Tests/SqlServer/QueryBreakdownTests.cs @@ -29,9 +29,12 @@ public class QueryBreakdownTests Assert.That(query.FinishClauses, Is.Not.Null); Assert.That(query.WithClauses, Is.Not.Null); }); - Assert.That(query.WithClauses, Is.Empty); - Assert.That(query.Parameters, Is.Not.Null); - Assert.That(query.ParameterList, Is.Not.Null); + Assert.Multiple(() => + { + Assert.That(query.WithClauses, Is.Empty); + Assert.That(query.Parameters, Is.Not.Null); + Assert.That(query.ParameterList, Is.Not.Null); + }); } [Test] @@ -778,10 +781,13 @@ public class QueryBreakdownTests Assert.That(withIndex, Is.GreaterThan(-1)); Assert.That(mainSelectIndex, Is.GreaterThan(-1)); }); - Assert.That(withIndex, Is.LessThan(mainSelectIndex)); + Assert.Multiple(() => + { + Assert.That(withIndex, Is.LessThan(mainSelectIndex)); - // Assert - Verify CTE definition - Assert.That(sql, Does.Contain("ProductTotals")); + // Assert - Verify CTE definition + Assert.That(sql, Does.Contain("ProductTotals")); + }); Assert.That(sql, Does.Contain("AS")); Assert.That(sql, Does.Contain("ProductID")); Assert.That(sql, Does.Contain("TotalQuantity"));