Skip to content

Commit f0e4cc1

Browse files
authored
Merge pull request #111 from tSQLt-org/UnidentifiedFacadeObjects
Unidentified facade objects
2 parents aaffc67 + b6f568b commit f0e4cc1

10 files changed

Lines changed: 173 additions & 40 deletions

.github/workflows/build_and_test_on_spawn.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,11 +191,13 @@ jobs:
191191
name: tSQLtBuildArtifact
192192
path: "${{ github.workspace }}\\tSQLt\\Build\\output\\tSQLtBuild"
193193

194-
- name: build tSQLtFacade --> Build/output/DacpacBuild/
194+
- name: build tSQLt and Facade Dacpacs --> Build/output/DacpacBuild/
195195
shell: pwsh
196196
working-directory: ${{ github.workspace }}\tSQLt\
197197
run: |
198+
.\Build\SetupDacpacBuild.ps1 -ErrorAction Stop
198199
.\Build\FacadeBuildDacpac.ps1 -ErrorAction Stop -ServerName "${{ steps.create-container.outputs.containerFQDN }}" -DatabaseName "tSQLt_dev" -Login "-U ${{ steps.create-container.outputs.containerUser }} -P ${{ steps.create-container.outputs.containerPassword }}" -SqlCmdPath "${{ steps.create-vars.outputs.sqlcmdPath }}" -SqlPackagePath "$env:SQLPACKAGE_HOME"
200+
.\Build\BuildtSQLtDacpac.ps1 -ErrorAction Stop -ServerName "${{ steps.create-container.outputs.containerFQDN }}" -DatabaseName "tSQLt_dev_dacpac_src" -Login "-U ${{ steps.create-container.outputs.containerUser }} -P ${{ steps.create-container.outputs.containerPassword }}" -SqlCmdPath "${{ steps.create-vars.outputs.sqlcmdPath }}" -SqlPackagePath "$env:SQLPACKAGE_HOME"
199201
200202
- name: create dacpacs artifact
201203
uses: actions/upload-artifact@v2

Build/Build.ssmssqlproj

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,12 @@
6060
<AssociatedConnUserName />
6161
<FullPath>GetFailedTestCount.sql</FullPath>
6262
</FileNode>
63+
<FileNode Name="GetFriendlySQLServerVersion.template.sql">
64+
<AssociatedConnectionMoniker />
65+
<AssociatedConnSrvName />
66+
<AssociatedConnUserName />
67+
<FullPath>GetFriendlySQLServerVersion.template.sql</FullPath>
68+
</FileNode>
6369
<FileNode Name="GetSQLServerVersion.sql">
6470
<AssociatedConnectionMoniker />
6571
<AssociatedConnSrvName />
@@ -118,6 +124,18 @@
118124
<AssociatedConnUserName />
119125
<FullPath>BuildHelper.exe</FullPath>
120126
</FileNode>
127+
<FileNode Name="BuildTestResultsZip.ps1">
128+
<AssociatedConnectionMoniker />
129+
<AssociatedConnSrvName />
130+
<AssociatedConnUserName />
131+
<FullPath>BuildTestResultsZip.ps1</FullPath>
132+
</FileNode>
133+
<FileNode Name="BuildtSQLtDacpac.ps1">
134+
<AssociatedConnectionMoniker />
135+
<AssociatedConnSrvName />
136+
<AssociatedConnUserName />
137+
<FullPath>BuildtSQLtDacpac.ps1</FullPath>
138+
</FileNode>
121139
<FileNode Name="BuildtSQLtZip.ps1">
122140
<AssociatedConnectionMoniker />
123141
<AssociatedConnSrvName />
@@ -142,6 +160,18 @@
142160
<AssociatedConnUserName />
143161
<FullPath>CreateAssemblyGenerator.exe</FullPath>
144162
</FileNode>
163+
<FileNode Name="CreateDebugSSMSProject.ps1">
164+
<AssociatedConnectionMoniker />
165+
<AssociatedConnSrvName />
166+
<AssociatedConnUserName />
167+
<FullPath>CreateDebugSSMSProject.ps1</FullPath>
168+
</FileNode>
169+
<FileNode Name="DacpacDeploy.ps1">
170+
<AssociatedConnectionMoniker />
171+
<AssociatedConnSrvName />
172+
<AssociatedConnUserName />
173+
<FullPath>DacpacDeploy.ps1</FullPath>
174+
</FileNode>
145175
<FileNode Name="FacadeBuildDacpac.ps1">
146176
<AssociatedConnectionMoniker />
147177
<AssociatedConnSrvName />
@@ -184,6 +214,12 @@
184214
<AssociatedConnUserName />
185215
<FullPath>LocalBuild.bat</FullPath>
186216
</FileNode>
217+
<FileNode Name="LocalValidateBuild.bat">
218+
<AssociatedConnectionMoniker />
219+
<AssociatedConnSrvName />
220+
<AssociatedConnUserName />
221+
<FullPath>LocalValidateBuild.bat</FullPath>
222+
</FileNode>
187223
<FileNode Name="NewRelease.doc">
188224
<AssociatedConnectionMoniker />
189225
<AssociatedConnSrvName />
@@ -202,6 +238,12 @@
202238
<AssociatedConnUserName />
203239
<FullPath>Setup.bat</FullPath>
204240
</FileNode>
241+
<FileNode Name="SetupDacpacBuild.ps1">
242+
<AssociatedConnectionMoniker />
243+
<AssociatedConnSrvName />
244+
<AssociatedConnUserName />
245+
<FullPath>SetupDacpacBuild.ps1</FullPath>
246+
</FileNode>
205247
<FileNode Name="SnInstallPfx.exe">
206248
<AssociatedConnectionMoniker />
207249
<AssociatedConnSrvName />

Build/BuildtSQLtDacpac.ps1

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
Param(
2+
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()][string] $ServerName,
3+
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()][string] $DatabaseName,
4+
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()][string] $Login,
5+
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()][string] $SqlCmdPath,
6+
[Parameter(Mandatory=$true)][ValidateNotNullOrEmpty()][string] $SqlPackagePath
7+
);
8+
<#
9+
Technically this should be called by a matrixed job, so that dacpacs are built for all versions (we support, like not 2005, 2008)
10+
#>
11+
12+
$scriptpath = $MyInvocation.MyCommand.Path;
13+
$dir = Split-Path $scriptpath;
14+
15+
.($dir+"\CommonFunctionsAndMethods.ps1");
16+
17+
$OutputPath = $dir + "/output/DacpacBuild/";
18+
$TempPath = $dir + "/temp/DacpacBuild/";
19+
20+
$ServerNameTrimmed = $ServerName.Trim();
21+
$LoginTrimmed = $Login.Trim("'").Trim();
22+
23+
24+
Log-Output "FileLocation: $dir";
25+
Push-Location;
26+
Set-Location $TempPath;
27+
28+
Exec-SqlFileOrQuery -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -SqlCmdPath $SqlCmdPath -FileNames @("ResetValidationServer.sql","PrepareServer.sql");
29+
Exec-SqlFileOrQuery -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -SqlCmdPath $SqlCmdPath -FileNames ($dir+"/CreateBuildDb.sql") -Database "tempdb" -AdditionalParameters ('-v NewDbName="'+$DatabaseName+'"');
30+
Exec-SqlFileOrQuery -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -SqlCmdPath $SqlCmdPath -FileNames "tSQLt.class.sql" -Database "$DatabaseName";
31+
32+
$FriendlySQLServerVersion = Get-FriendlySQLServerVersion -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -SqlCmdPath $SqlCmdPath;
33+
$tSQLtDacpacFileName = "tSQLt."+$FriendlySQLServerVersion+".dacpac";
34+
$tSQLtApplicationName = "tSQLt."+$FriendlySQLServerVersion;
35+
$tSQLtConnectionString = Get-SqlConnectionString -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -DatabaseName $DatabaseName;
36+
37+
& "$SqlPackagePath\sqlpackage.exe" /a:Extract /scs:"$tSQLtConnectionString" /tf:"$tSQLtDacpacFileName" /p:DacApplicationName="$tSQLtApplicationName" /p:IgnoreExtendedProperties=true /p:DacMajorVersion=0 /p:DacMinorVersion=1 /p:ExtractUsageProperties=false
38+
if($LASTEXITCODE -ne 0) {
39+
throw "error during execution of dacpac " + $tSQLtDacpacFileName;
40+
}
41+
42+
Copy-Item -Path $tSQLtDacpacFileName -Destination $OutputPath;
43+
44+
Pop-Location;

Build/FacadeBuildDacpac.ps1

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -20,24 +20,12 @@ $dir = Split-Path $scriptpath;
2020
$OutputPath = $dir + "/output/DacpacBuild/";
2121
$TempPath = $dir + "/temp/DacpacBuild/";
2222

23-
<# Clean #>
24-
Remove-DirectoryQuietly -Path $TempPath;
25-
Remove-DirectoryQuietly -Path $OutputPath;
26-
27-
<# Init #>
28-
$tempDir = New-Item -ItemType "directory" -Path $TempPath;
29-
$outputDir = New-Item -ItemType "directory" -Path $OutputPath;
30-
3123
$ServerNameTrimmed = $ServerName.Trim();
3224
$LoginTrimmed = $Login.Trim("'").Trim();
3325

3426

3527
Log-Output "FileLocation: $dir";
3628
Push-Location;
37-
Set-Location $dir;
38-
39-
Expand-Archive -Path "./output/tSQLtBuild/tSQLtFacade.zip" -DestinationPath $TempPath;
40-
4129
Set-Location $TempPath;
4230

4331
$SourceDatabaseName = $DatabaseName+"_src";
@@ -52,21 +40,11 @@ $FacadeDacpacFileName = "tSQLtFacade."+$FriendlySQLServerVersion+".dacpac";
5240
$FacadeApplicationName = "tSQLtFacade."+$FriendlySQLServerVersion;
5341
$FacadeConnectionString = Get-SqlConnectionString -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -DatabaseName $TargetDatabaseName;
5442

55-
$tSQLtDacpacFileName = "tSQLt."+$FriendlySQLServerVersion+".dacpac";
56-
$tSQLtApplicationName = "tSQLt."+$FriendlySQLServerVersion;
57-
$tSQLtConnectionString = Get-SqlConnectionString -ServerName $ServerNameTrimmed -Login "$LoginTrimmed" -DatabaseName $SourceDatabaseName;
58-
5943
& "$SqlPackagePath\sqlpackage.exe" /a:Extract /scs:"$FacadeConnectionString" /tf:"$FacadeDacpacFileName" /p:DacApplicationName="$FacadeApplicationName" /p:IgnoreExtendedProperties=true /p:DacMajorVersion=0 /p:DacMinorVersion=1 /p:ExtractUsageProperties=false
6044
if($LASTEXITCODE -ne 0) {
6145
throw "error during execution of dacpac " + $FacadeDacpacFileName;
6246
}
6347

64-
& "$SqlPackagePath\sqlpackage.exe" /a:Extract /scs:"$tSQLtConnectionString" /tf:"$tSQLtDacpacFileName" /p:DacApplicationName="$tSQLtApplicationName" /p:IgnoreExtendedProperties=true /p:DacMajorVersion=0 /p:DacMinorVersion=1 /p:ExtractUsageProperties=false
65-
if($LASTEXITCODE -ne 0) {
66-
throw "error during execution of dacpac " + $tSQLtDacpacFileName;
67-
}
68-
6948
Copy-Item -Path $FacadeDacpacFileName -Destination $OutputPath;
70-
Copy-Item -Path $tSQLtDacpacFileName -Destination $OutputPath;
7149

7250
Pop-Location;

Build/LocalBuild.bat

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,14 @@ IF "%VerboseOutput%"=="ON" @ECHO ON
4343
CALL "%AntHome%\bin\ant" -buildfile Build\tSQLt.build.xml -Dcommit.id="--> LOCALBUILD <--" || goto :error
4444
@ECHO OFF
4545

46-
ECHO +-------------------------+
47-
ECHO : Creating tSQLt Facade :
48-
ECHO +-------------------------+
46+
ECHO +-----------------------------------+
47+
ECHO : Creating tSQLt and Facade dacpacs :
48+
ECHO +-----------------------------------+
4949
IF "%VerboseOutput%"=="ON" @ECHO ON
50+
CALL "powershell.exe" -File Build\SetupDacpacBuild.ps1 -ErrorAction Stop || goto :error
5051
@REM -----------------------------------------------------------------------------This space character is utterly important! --------------v
5152
CALL "powershell.exe" -File Build\FacadeBuildDacpac.ps1 -ErrorAction Stop -ServerName "%SQLInstanceName%" -DatabaseName "%DBName%" -Login " %DBLogin%" -SqlCmdPath "%SQLCMDPath%" -SqlPackagePath "%SQLPackagePath%" || goto :error
53+
CALL "powershell.exe" -File Build\BuildtSQLtDacpac.ps1 -ErrorAction Stop -ServerName "%SQLInstanceName%" -DatabaseName "%DBName%_dacpac_src" -Login " %DBLogin%" -SqlCmdPath "%SQLCMDPath%" -SqlPackagePath "%SQLPackagePath%" || goto :error
5254
@ECHO OFF
5355

5456
ECHO +-------------------------+

Build/SetupDacpacBuild.ps1

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
$scriptpath = $MyInvocation.MyCommand.Path;
2+
$dir = Split-Path $scriptpath;
3+
4+
.($dir+"\CommonFunctionsAndMethods.ps1");
5+
6+
$OutputPath = $dir + "/output/DacpacBuild/";
7+
$TempPath = $dir + "/temp/DacpacBuild/";
8+
9+
<# Clean #>
10+
Remove-DirectoryQuietly -Path $TempPath;
11+
Remove-DirectoryQuietly -Path $OutputPath;
12+
13+
$tempDir = New-Item -ItemType "directory" -Path $TempPath;
14+
$outputDir = New-Item -ItemType "directory" -Path $OutputPath;
15+
16+
17+
Expand-Archive -Path ($dir + "/output/tSQLtBuild/tSQLtFacade.zip") -DestinationPath $TempPath;
18+
Expand-Archive -Path ($dir + "/output/tSQLtBuild/tSQLtFiles.zip") -DestinationPath $TempPath -Force;

Build/tSQLt.validatebuild.xml

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,35 @@
2121

2222
<target name="set.database.name.variables">
2323
<property name="run.tSQLt.database" value="${db.name}" />
24-
<property name="run.Dacpac.database" value="${db.name}_dacpac" />
24+
<property name="run.Dacpac.src.database" value="${db.name}_dacpac_src" />
25+
<property name="run.Dacpac.validate.database" value="${db.name}_dacpac_tgt" />
2526
<property name="run.Facade.database" value="${db.name}_facade" />
2627
<property name="run.Example.database" value="tSQLt_Example" /> <!-- do not change, hard coded in deployment -->
2728

2829
<property name="run.Facade.src.database" value="${run.Facade.database}_src" />
29-
<property name="run.Facade.trg.database" value="${run.Facade.database}_trg" />
30+
<property name="run.Facade.tgt.database" value="${run.Facade.database}_tgt" />
3031
<property name="run.Facade.validate.database" value="${run.Facade.database}_validate" />
31-
<echo message="Selected Dacpac Database: [${run.Dacpac.database}]" />
32+
33+
<echo message="Selected tSQLt Database: [${run.tSQLt.database}]" />
34+
35+
<echo message="Selected Dacpac Src Database: [${run.Dacpac.src.database}]" />
36+
<echo message="Selected Dacpac Validate Database: [${run.Dacpac.validate.database}]" />
37+
38+
<echo message="Selected Facade Database Prefix: [${run.Facade.database}]" />
39+
<echo message="Selected Facade Src Database: [${run.Facade.src.database}]" />
40+
<echo message="Selected Facade Tgt Database: [${run.Facade.tgt.database}]" />
41+
<echo message="Selected Facade Validate Database: [${run.Facade.validate.database}]" />
42+
43+
<echo message="Selected Example Database: [${run.Example.database}]" />
44+
3245
</target>
3346

3447
<target name="run.all" depends="set.database.name.variables, Preparation">
3548
<antcall target="deployAndValidate.tSQLt">
3649
<param name="deployAndValidate.tSQLt.database" value="${run.tSQLt.database}" />
3750
</antcall>
3851
<antcall target="deployAndValidate.Dacpac">
39-
<param name="deployAndValidate.Dacpac.database" value="${run.Dacpac.database}" />
52+
<param name="deployAndValidate.Dacpac.database" value="${run.Dacpac.validate.database}" />
4053
</antcall>
4154
<antcall target="deployAndValidate.Facade">
4255
<param name="deployAndValidate.Facade.database" value="${run.Facade.database}" />
@@ -74,12 +87,12 @@
7487
</antcall>
7588
</target>
7689
<target name="run.DacpacOnly" depends="set.database.name.variables, Preparation">
77-
<echo message="Selected Database: [${run.Dacpac.database}]" />
90+
<echo message="Selected Database: [${run.Dacpac.validate.database}]" />
7891
<antcall target="deployAndValidate.Dacpac">
79-
<param name="deployAndValidate.Dacpac.database" value="${run.Dacpac.database}" />
92+
<param name="deployAndValidate.Dacpac.database" value="${run.Dacpac.validate.database}" />
8093
</antcall>
8194
<antcall target="process.testresults">
82-
<param name="process.testresults.database" value="${run.Dacpac.database}" />
95+
<param name="process.testresults.database" value="${run.Dacpac.validate.database}" />
8396
<param name="process.testresults.FileList" value="TestResults_tSQLtDacpac.xml;testresults_tSQLtDacpac_external_access_key_exists.xml;testresults_tSQLtDacpac_external_access.xml;testresults_tSQLtDacpac_sa.xml;TestResults_tSQLtDacpac_TestUtil.xml;" />
8497
</antcall>
8598
</target>

CI/Azure-DevOps/AZ_MainPipeline.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,9 @@ stages:
342342
$SQLPwd = $myJsonObject.$SQLPwdKey;
343343
$FQDNAndPort = $myJsonObject.$FQDNAndPortKey;
344344
345+
.\Build\SetupDacpacBuild.ps1 -ErrorAction Stop
345346
.\Build\FacadeBuildDacpac.ps1 -ErrorAction Stop -ServerName "$FQDNAndPort" -DatabaseName "$(buildDatabase)" -Login " -U $SQLUserName -P $SQLPwd" -SqlCmdPath "$(SQLCMDPath)" -SqlPackagePath "$(SQLPackagePath)"
347+
.\Build\BuildtSQLtDacpac.ps1 -ErrorAction Stop -ServerName "$FQDNAndPort" -DatabaseName "$(buildDatabase)_dacpac_src" -Login " -U $SQLUserName -P $SQLPwd" -SqlCmdPath "$(SQLCMDPath)" -SqlPackagePath "$(SQLPackagePath)"
346348
347349
- task: PublishPipelineArtifact@1
348350
name: PublishtSQLtDacpacArtifact

TestUtil/tSQLt_testutil.class.sql

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -411,7 +411,15 @@ BEGIN
411411
[Error] [int] NULL,
412412
[TestCaseSet] NVARCHAR(MAX) NULL,
413413
[RunGroup] NVARCHAR(MAX) NULL,
414-
[DatabaseName] NVARCHAR(MAX) NULL
414+
[DatabaseName] NVARCHAR(MAX) NULL,
415+
[Version] VARCHAR(14) NULL,
416+
[ClrVersion] NVARCHAR(4000) NULL,
417+
[ClrSigningKey] VARBINARY(8000) NULL,
418+
[InstalledOnSqlVersion] NUMERIC(10, 2) NULL,
419+
[SqlVersion] NUMERIC(10, 2) NULL,
420+
[SqlBuild] NUMERIC(10, 2) NULL,
421+
[SqlEdition] NVARCHAR(128) NULL,
422+
[HostPlatform] NVARCHAR(256) NULL
415423
);
416424
';
417425
EXEC(@cmd);
@@ -437,7 +445,7 @@ BEGIN
437445
AND C.is_identity = 0
438446
ORDER BY C.column_id
439447
FOR XML PATH,TYPE).value('.','NVARCHAR(MAX)');
440-
SET @cmd = 'INSERT INTO '+@TableName+'('+@cmd+'[RunGroup],[DatabaseName]) SELECT '+@cmd+'RG,DB FROM tSQLt_testutil.MultiRunLog RIGHT JOIN (VALUES('''+@RunGroup+''',DB_NAME()))XX(RG,DB) ON 1=1;'
448+
SET @cmd = 'INSERT INTO '+@TableName+' SELECT '+@cmd+'RG,DB,I.* FROM tSQLt_testutil.MultiRunLog CROSS JOIN tSQLt.Info() I RIGHT JOIN (VALUES('''+@RunGroup+''',DB_NAME()))XX(RG,DB) ON 1=1;'
441449

442450
EXEC(@cmd);
443451
END;
@@ -460,7 +468,15 @@ BEGIN
460468
'CAST(REPLICATE('' '','+CAST(MAX(ErrorML) AS NVARCHAR(MAX))+'-LEN(Error))+CAST(Error AS VARCHAR(MAX)) AS CHAR('+CAST(MAX(ErrorML)+1 AS NVARCHAR(MAX))+'))Error,'+
461469
'CAST(TestCaseSet AS CHAR('+CAST(MAX(TestCaseSetML) AS NVARCHAR(MAX))+'))TestCaseSet,'+
462470
'CAST(RunGroup AS CHAR('+CAST(MAX(RunGroupML) AS NVARCHAR(MAX))+'))RunGroup,'+
463-
'CAST(DatabaseName AS CHAR('+CAST(MAX(DatabaseNameML) AS NVARCHAR(MAX))+'))DatabaseName '+
471+
'CAST(DatabaseName AS CHAR('+CAST(MAX(DatabaseNameML) AS NVARCHAR(MAX))+'))DatabaseName, '+
472+
'CAST([Version] AS CHAR('+CAST(MAX(VersionML) AS NVARCHAR(MAX))+'))[Version], '+
473+
'CAST([ClrVersion] AS CHAR('+CAST(MAX(ClrVersionML) AS NVARCHAR(MAX))+'))[ClrVersion], '+
474+
'CONVERT(CHAR('+CAST(MAX(ClrSigningKeyML) AS NVARCHAR(MAX))+'),[ClrSigningKey],1)[ClrSigningKey], '+
475+
'CAST([InstalledOnSqlVersion] AS CHAR('+CAST(MAX(InstalledOnSqlVersionML) AS NVARCHAR(MAX))+'))[InstalledOnSqlVersion], '+
476+
'CAST([SqlVersion] AS CHAR('+CAST(MAX(SqlVersionML) AS NVARCHAR(MAX))+'))[SqlVersion], '+
477+
'CAST([SqlBuild] AS CHAR('+CAST(MAX(SqlBuildML) AS NVARCHAR(MAX))+'))[SqlBuild], '+
478+
'CAST([SqlEdition] AS CHAR('+CAST(MAX(SqlEditionML) AS NVARCHAR(MAX))+'))[SqlEdition], '+
479+
'CAST([HostPlatform] AS CHAR('+CAST(MAX(HostPlatformML) AS NVARCHAR(MAX))+'))[HostPlatform] '+
464480
'INTO tSQLt_testutil.LocalBuildLogTempFormatted FROM tSQLt_testutil.LocalBuildLogTemp'
465481
FROM
466482
(
@@ -472,9 +488,17 @@ BEGIN
472488
MAX(LEN(CAST(Error AS VARCHAR(MAX)))) ErrorML,
473489
2+MAX(LEN(TestCaseSet)) TestCaseSetML,
474490
2+MAX(LEN(RunGroup)) RunGroupML,
475-
2+MAX(LEN(DatabaseName)) DatabaseNameML
491+
2+MAX(LEN(DatabaseName)) DatabaseNameML,
492+
MAX(LEN(CAST([Version] AS VARCHAR(MAX)))) VersionML,
493+
MAX(LEN(CAST([ClrVersion] AS VARCHAR(MAX)))) ClrVersionML,
494+
MAX(LEN(CONVERT(NVARCHAR(MAX),[ClrSigningKey],1))) ClrSigningKeyML,
495+
MAX(LEN(CAST([InstalledOnSqlVersion] AS VARCHAR(MAX)))) InstalledOnSqlVersionML,
496+
MAX(LEN(CAST([SqlVersion] AS VARCHAR(MAX)))) SqlVersionML,
497+
MAX(LEN(CAST([SqlBuild] AS VARCHAR(MAX)))) SqlBuildML,
498+
MAX(LEN(CAST([SqlEdition] AS VARCHAR(MAX)))) SqlEditionML,
499+
MAX(LEN(CAST([HostPlatform] AS VARCHAR(MAX)))) HostPlatformML
476500
FROM tSQLt_testutil.LocalBuildLogTemp
477-
UNION ALL SELECT 2,7,7,7,5,11,8,12
501+
UNION ALL SELECT 2,7,7,7,5,11,8,12,1,1,1,1,1,1,1,1
478502
)X
479503
);
480504
EXEC(@cmd);

TestUtilTests/tSQLt_testutil_test_SA.class.sql

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,15 @@ BEGIN
2323
[Error] [int] NULL,
2424
[TestCaseSet] NVARCHAR(MAX) NULL,
2525
[RunGroup] NVARCHAR(MAX) NULL,
26-
[DatabaseName] NVARCHAR(MAX) NULL
26+
[DatabaseName] NVARCHAR(MAX) NULL,
27+
[Version] VARCHAR(14) NULL,
28+
[ClrVersion] NVARCHAR(4000) NULL,
29+
[ClrSigningKey] VARBINARY(8000) NULL,
30+
[InstalledOnSqlVersion] NUMERIC(10, 2) NULL,
31+
[SqlVersion] NUMERIC(10, 2) NULL,
32+
[SqlBuild] NUMERIC(10, 2) NULL,
33+
[SqlEdition] NVARCHAR(128) NULL,
34+
[HostPlatform] NVARCHAR(256) NULL
2735
);
2836

2937
EXEC('SELECT TOP(0) * INTO tSQLt_testutil_test_SA.[testtable for comparison Actual] FROM '+@TableName+';')
@@ -181,7 +189,7 @@ BEGIN
181189
FROM tSQLt_testutil_test_SA.[Temp BuildLog Table] X LEFT JOIN tSQLt_testutil_test_SA.[Temp BuildLog Table] AS MRL ON 0=1;
182190

183191
EXEC tSQLt.ExpectNoException;
184-
192+
185193
INSERT INTO #ignore
186194
EXEC tSQLt_testutil.CheckBuildLog @TableName = 'tSQLt_testutil_test_SA.[Temp BuildLog Table]';
187195

0 commit comments

Comments
 (0)