From 121aa5710aa9da32b5a1935f3ddf3fbf0ece0b80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cmbt1=E2=80=9D?= Date: Thu, 16 Nov 2023 19:15:59 +0000 Subject: [PATCH 1/2] two tests are passing --- Demo/dbo.GetDiscount.sql | 2 +- Tests/GetDiscountTests.sql | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Demo/dbo.GetDiscount.sql b/Demo/dbo.GetDiscount.sql index 3a7a7c2..9322fa4 100644 --- a/Demo/dbo.GetDiscount.sql +++ b/Demo/dbo.GetDiscount.sql @@ -6,4 +6,4 @@ CREATE FUNCTION dbo.GetDiscount(@amount DECIMAL(13,2)) RETURNS TABLE AS RETURN - SELECT 0 Discount; + SELECT CASE WHEN @amount>50 THEN @amount*.1 ELSE 0 END Discount; diff --git a/Tests/GetDiscountTests.sql b/Tests/GetDiscountTests.sql index bdb7f43..14521a4 100644 --- a/Tests/GetDiscountTests.sql +++ b/Tests/GetDiscountTests.sql @@ -20,3 +20,12 @@ BEGIN EXEC tSQLt.AssertEqualsTable '#expected','#actual'; END; GO +CREATE PROCEDURE GetDiscountTests.[test 10% discount if amount greater 50] +AS +BEGIN + SELECT Discount INTO #actual FROM dbo.GetDiscount(51.00); + SELECT TOP(0) A.* INTO #expected FROM #actual X LEFT JOIN #actual A ON 1=0; + INSERT INTO #expected VALUES(5.1); + EXEC tSQLt.AssertEqualsTable '#expected','#actual'; +END; +GO \ No newline at end of file From 40741abfd1e95ef44f5014424061119f0f6bf132 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Cmbt1=E2=80=9D?= Date: Thu, 16 Nov 2023 19:19:03 +0000 Subject: [PATCH 2/2] third test passing --- Demo/dbo.GetDiscount.sql | 2 +- Tests/GetDiscountTests.sql | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Demo/dbo.GetDiscount.sql b/Demo/dbo.GetDiscount.sql index 9322fa4..eafb77c 100644 --- a/Demo/dbo.GetDiscount.sql +++ b/Demo/dbo.GetDiscount.sql @@ -6,4 +6,4 @@ CREATE FUNCTION dbo.GetDiscount(@amount DECIMAL(13,2)) RETURNS TABLE AS RETURN - SELECT CASE WHEN @amount>50 THEN @amount*.1 ELSE 0 END Discount; + SELECT CASE WHEN @amount>=50 THEN @amount*.1 ELSE 0 END Discount; diff --git a/Tests/GetDiscountTests.sql b/Tests/GetDiscountTests.sql index 14521a4..0cfe5ca 100644 --- a/Tests/GetDiscountTests.sql +++ b/Tests/GetDiscountTests.sql @@ -28,4 +28,13 @@ BEGIN INSERT INTO #expected VALUES(5.1); EXEC tSQLt.AssertEqualsTable '#expected','#actual'; END; +GO +CREATE PROCEDURE GetDiscountTests.[test 10% discount if amount equal 50] +AS +BEGIN + SELECT Discount INTO #actual FROM dbo.GetDiscount(50.00); + SELECT TOP(0) A.* INTO #expected FROM #actual X LEFT JOIN #actual A ON 1=0; + INSERT INTO #expected VALUES(5.0); + EXEC tSQLt.AssertEqualsTable '#expected','#actual'; +END; GO \ No newline at end of file