Skip to content

Commit 70ec9a2

Browse files
author
mbt1
committed
Made this work pre 2017, too
1 parent 6fd7b55 commit 70ec9a2

File tree

2 files changed

+38
-2
lines changed

2 files changed

+38
-2
lines changed

Tests/Private_GetFormattedErrorInfoTests.class.sql

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,28 @@ AS
4949
BEGIN
5050
DECLARE @FormattedError NVARCHAR(MAX);
5151

52+
BEGIN TRY
53+
EXEC ('/*Line 1*/CREATE PROCEDURE Private_GetFormattedErrorInfoTests.myInnerError
54+
/*Line 2*/AS
55+
/*Line 3*/BEGIN
56+
/*Line 4*/ RAISERROR (13042,14,13);
57+
/*Line 5*/END;');
58+
EXEC ('Private_GetFormattedErrorInfoTests.myInnerError');
59+
END TRY
60+
BEGIN CATCH
61+
SET @FormattedError = (SELECT FormattedError FROM tSQLt.Private_GetFormattedErrorInfo());
62+
END CATCH;
63+
64+
EXEC tSQLt.AssertLike @ExpectedPattern = '%| Procedure: %myInnerError (4) |%', @Actual = @FormattedError;
65+
END
66+
GO
67+
/*-----------------------------------------------------------------------------------------------*/
68+
GO
69+
CREATE PROCEDURE Private_GetFormattedErrorInfoTests.[test returns the correct ERROR procedure name and line number for #tempProcedure]
70+
AS
71+
BEGIN
72+
DECLARE @FormattedError NVARCHAR(MAX);
73+
5274
BEGIN TRY
5375
EXEC ('/*Line 1*/CREATE PROCEDURE #myInnerError
5476
/*Line 2*/AS
@@ -61,7 +83,7 @@ BEGIN
6183
SET @FormattedError = (SELECT FormattedError FROM tSQLt.Private_GetFormattedErrorInfo());
6284
END CATCH;
6385

64-
EXEC tSQLt.AssertLike @ExpectedPattern = '%| Procedure: #myInnerError (4) |%', @Actual = @FormattedError;
86+
EXEC tSQLt.AssertLike @ExpectedPattern = '%| Procedure: #myInnerError% (4) |%', @Actual = @FormattedError;
6587
END
6688
GO
6789
/*-----------------------------------------------------------------------------------------------*/

Tests/Private_NoTransactionHandleTableTests.class.sql

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,21 @@ END;
176176
GO
177177
/*-----------------------------------------------------------------------------------------------*/
178178
GO
179-
CREATE PROCEDURE Private_NoTransactionHandleTableTests.[test augments any internal error with ' tSQLt is in an unknown state: Stopping execution.']
179+
--[@tSQLt:MaxSqlMajorVersion](13)
180+
CREATE PROCEDURE Private_NoTransactionHandleTableTests.[test augments any internal error with ' tSQLt is in an unknown state: Stopping execution. (<=2016)']
181+
AS
182+
BEGIN
183+
CREATE TABLE Private_NoTransactionHandleTableTests.SomeTable(i INT);
184+
EXEC tSQLt.SpyProcedure @ProcedureName = 'tSQLt.RemoveObject', @CommandToExecute='RAISERROR(''SOME INTERNAL ERROR.'',15,11)';
185+
186+
EXEC tSQLt.ExpectException @ExpectedMessage = 'tSQLt is in an unknown state: Stopping execution. (SOME INTERNAL ERROR. | Procedure: RemoveObject | Line: 1)', @ExpectedSeverity = 15, @ExpectedState = 11;
187+
EXEC tSQLt.Private_NoTransactionHandleTable @Action = 'Save', @FullTableName = 'Private_NoTransactionHandleTableTests.SomeTable', @TableAction = 'Hide';
188+
END;
189+
GO
190+
/*-----------------------------------------------------------------------------------------------*/
191+
GO
192+
--[@tSQLt:MinSqlMajorVersion](14)
193+
CREATE PROCEDURE Private_NoTransactionHandleTableTests.[test augments any internal error with ' tSQLt is in an unknown state: Stopping execution. (>2016)']
180194
AS
181195
BEGIN
182196
CREATE TABLE Private_NoTransactionHandleTableTests.SomeTable(i INT);

0 commit comments

Comments
 (0)