chore: initial git load of code space

This commit is contained in:
Thom Lamb
2026-05-12 08:52:33 -05:00
parent 9abada692f
commit 5e467bcc9c
384 changed files with 65960 additions and 2 deletions
@@ -0,0 +1,37 @@
using Strata.SqlTools.SqlBreakdown.Classes;
namespace Strata.SqlTools.SqlBreakdown.Tests.SqlBreakdownCollectionTests;
/// <summary>
/// Unit tests for SqlBreakdownCollection with transaction statements.
/// </summary>
[TestFixture]
public class SqlBreakdownCollectionTransactionTests : SqlBreakdownCollectionTestBase
{
[Test]
public void ParseBatch_WithTransactionStatements_ParsesSuccessfully()
{
// Arrange
var collection = new SqlBreakdownCollection();
var batchSql = @"
BEGIN TRANSACTION UpdatePrices
UPDATE Products SET Price = Price * 1.1 WHERE Category = 'Electronics'
UPDATE ProductPriceHistory SET NewPrice = Price FROM Products WHERE Products.Id = ProductPriceHistory.ProductId
COMMIT TRANSACTION UpdatePrices
GO
BEGIN TRANSACTION DeleteOldOrders
DELETE FROM OrderItems WHERE OrderId IN (SELECT OrderId FROM Orders WHERE OrderDate < '2018-01-01')
DELETE FROM Orders WHERE OrderDate < '2018-01-01'
COMMIT TRANSACTION DeleteOldOrders
";
// Act
collection.ParseBatch(batchSql);
// Assert
Assert.That(collection.Count, Is.GreaterThanOrEqualTo(1));
var statement = collection.GetRawStatementAt(0);
Assert.That(statement, Does.Contain("BEGIN TRANSACTION"));
Assert.That(statement, Does.Contain("COMMIT"));
}
}