forked from tSQLt-org/tSQLt
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathRemoveObjectIfExistsTests.class.sql
More file actions
37 lines (27 loc) · 1.09 KB
/
Copy pathRemoveObjectIfExistsTests.class.sql
File metadata and controls
37 lines (27 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
EXEC tSQLt.NewTestClass 'RemoveObjectIfExistsTests';
GO
CREATE PROCEDURE RemoveObjectIfExistsTests.[test calls tSQLt.RemoveObject with @IfExists = 1]
AS
BEGIN
EXEC tSQLt.SpyProcedure @ProcedureName = 'tSQLt.RemoveObject', @CommandToExecute = NULL;
EXEC tSQLt.RemoveObjectIfExists @ObjectName = 'some.name';
SELECT ObjectName,IfExists
INTO #Actual
FROM tSQLt.RemoveObject_SpyProcedureLog;
SELECT TOP(0) *
INTO #Expected
FROM #Actual;
INSERT INTO #Expected
VALUES('some.name',1);
EXEC tSQLt.AssertEqualsTable '#Expected','#Actual';
END;
GO
CREATE PROCEDURE RemoveObjectIfExistsTests.[test calls tSQLt.RemoveObject passes @NewName back]
AS
BEGIN
EXEC tSQLt.SpyProcedure @ProcedureName = 'tSQLt.RemoveObject', @CommandToExecute = 'SET @NewName = ''new.name'';';
DECLARE @ActualNewName NVARCHAR(MAX); SET @ActualNewName = 'No value was returned!';
EXEC tSQLt.RemoveObjectIfExists @ObjectName = 'some.name',@NewName = @ActualNewName OUT;
EXEC tSQLt.AssertEqualsString @Expected = 'new.name', @Actual = @ActualNewName;
END;
GO