Skip to content

Commit d6a82b1

Browse files
committed
fixed the build.
1 parent ab413ba commit d6a82b1

File tree

2 files changed

+23
-23
lines changed

2 files changed

+23
-23
lines changed

Source/tSQLt.FakeTable.ssp.sql

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -9,47 +9,47 @@ CREATE PROCEDURE tSQLt.FakeTable
99
@Defaults BIT = NULL
1010
AS
1111
BEGIN
12-
DECLARE @OrigSchemaName NVARCHAR(MAX);
13-
DECLARE @OrigTableName NVARCHAR(MAX);
14-
DECLARE @NewNameOfOriginalTable NVARCHAR(4000);
15-
DECLARE @OrigTableFullName NVARCHAR(MAX); SET @OrigTableFullName = NULL;
16-
17-
SELECT @OrigSchemaName = @SchemaName,
18-
@OrigTableName = @TableName
19-
20-
IF(@OrigTableName NOT IN (PARSENAME(@OrigTableName,1),QUOTENAME(PARSENAME(@OrigTableName,1)))
21-
AND @OrigSchemaName IS NOT NULL)
12+
DECLARE @OrigObjectCleanQuotedSchemaName NVARCHAR(MAX);
13+
DECLARE @OrigObjectCleanQuotedName NVARCHAR(MAX);
14+
DECLARE @OrigObjectNewName NVARCHAR(4000);
15+
DECLARE @OrigObjectFullName NVARCHAR(MAX) = NULL;
16+
DECLARE @TargetObjectFullName NVARCHAR(MAX) = NULL;
17+
18+
IF(@TableName NOT IN (PARSENAME(@TableName,1),QUOTENAME(PARSENAME(@TableName,1)))
19+
AND @SchemaName IS NOT NULL)
2220
BEGIN
2321
RAISERROR('When @TableName is a multi-part identifier, @SchemaName must be NULL!',16,10);
2422
END
2523

26-
SELECT @SchemaName = CleanSchemaName,
27-
@TableName = CleanTableName
24+
SELECT @OrigObjectCleanQuotedSchemaName = CleanSchemaName,
25+
@OrigObjectCleanQuotedName = CleanTableName
2826
FROM tSQLt.Private_ResolveFakeTableNamesForBackwardCompatibility(@TableName, @SchemaName);
2927

30-
EXEC tSQLt.Private_ValidateFakeTableParameters @SchemaName,@OrigTableName,@OrigSchemaName;
28+
EXEC tSQLt.Private_ValidateFakeTableParameters @OrigObjectCleanQuotedSchemaName,@TableName,@SchemaName;
29+
30+
SET @OrigObjectFullName = @OrigObjectCleanQuotedSchemaName + '.' + @OrigObjectCleanQuotedName;
3131

32-
EXEC tSQLt.Private_RenameObjectToUniqueName @SchemaName, @TableName, @NewNameOfOriginalTable OUTPUT;
32+
EXEC tSQLt.Private_RenameObjectToUniqueName @OrigObjectCleanQuotedSchemaName, @OrigObjectCleanQuotedName, @OrigObjectNewName OUTPUT;
3333

34-
SELECT @OrigTableFullName = S.base_object_name
34+
SELECT @TargetObjectFullName = S.base_object_name
3535
FROM sys.synonyms AS S
36-
WHERE S.object_id = OBJECT_ID(@SchemaName + '.' + @NewNameOfOriginalTable);
36+
WHERE S.object_id = OBJECT_ID(@OrigObjectCleanQuotedSchemaName + '.' + @OrigObjectNewName);
3737

38-
IF(@OrigTableFullName IS NOT NULL)
38+
IF(@TargetObjectFullName IS NOT NULL)
3939
BEGIN
40-
IF(COALESCE(OBJECT_ID(@OrigTableFullName,'U'),OBJECT_ID(@OrigTableFullName,'V')) IS NULL)
40+
IF(COALESCE(OBJECT_ID(@TargetObjectFullName,'U'),OBJECT_ID(@TargetObjectFullName,'V')) IS NULL)
4141
BEGIN
42-
RAISERROR('Cannot fake synonym %s.%s as it is pointing to %s, which is not a table or view!',16,10,@SchemaName,@TableName,@OrigTableFullName);
42+
RAISERROR('Cannot fake synonym %s as it is pointing to %s, which is not a table or view!',16,10,@OrigObjectFullName,@TargetObjectFullName);
4343
END;
4444
END;
4545
ELSE
4646
BEGIN
47-
SET @OrigTableFullName = @SchemaName + '.' + @NewNameOfOriginalTable;
47+
SET @TargetObjectFullName = @OrigObjectCleanQuotedSchemaName + '.' + QUOTENAME(@OrigObjectNewName); --TODO:Test for QUOTENAME
4848
END;
4949

50-
EXEC tSQLt.Private_CreateFakeOfTable @SchemaName, @TableName, @OrigTableFullName, @Identity, @ComputedColumns, @Defaults;
50+
EXEC tSQLt.Private_CreateFakeOfTable @OrigObjectCleanQuotedSchemaName, @OrigObjectCleanQuotedName, @TargetObjectFullName, @Identity, @ComputedColumns, @Defaults;
5151

52-
EXEC tSQLt.Private_MarktSQLtTempObject @OrigTableFullName, N'TABLE', @NewNameOfOriginalTable;
52+
EXEC tSQLt.Private_MarktSQLtTempObject @OrigObjectFullName, N'TABLE', @OrigObjectNewName;
5353
END
5454
---Build-
5555
GO

Tests/FakeTableTests.class.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -969,7 +969,7 @@ BEGIN
969969
CREATE TABLE FakeTableTests.TempTable1(c1 INT NULL, c2 BIGINT NULL, c3 VARCHAR(MAX) NULL);
970970
EXEC('CREATE VIEW FakeTableTests.TempView1 AS SELECT * FROM FakeTableTests.TempTable1;');
971971
CREATE SYNONYM FakeTableTests.TempSynonym1 FOR FakeTableTests.TempView1;
972-
972+
973973
EXEC tSQLt.FakeTable 'FakeTableTests.TempSynonym1';
974974

975975
EXEC tSQLt.AssertEqualsTableSchema @Expected = 'FakeTableTests.TempTable1', @Actual = 'FakeTableTests.TempSynonym1';

0 commit comments

Comments
 (0)