Skip to content

Commit ee89085

Browse files
mbt1lizbaronmbt1
authored
Update tests for linux (#82)
* Added HostPlatform * added annotation for HostPlatform based skipping * added requireWindows to EXTERNAL_ACCESS_KEY_EXISTS/EnableExternalAccessTests.class.sql * - fixed spelling of annotation - added more tests to be skipped on Linux - added meaningful error messages for Linux-specific behavior * added test for broken @Try functionality * Don't execute tSQLt.EnableExternalAccess on Linux. Throw only if @Try = 0. * one more thing... * shouldn't run the tests suites that require ExternalAccess if you don't have it... * more ripples related to skipping stuff on Linux Co-authored-by: Liz Baron <[email protected]> Co-authored-by: mbt1 <[email protected]>
1 parent 9d2652b commit ee89085

21 files changed

+277
-22
lines changed

Build/EnableExternalAccess.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
EXEC tSQLt.EnableExternalAccess;
1+
EXEC tSQLt.EnableExternalAccess @try = 1;

Source/BuildOrder.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ tSQLt.Private_SkipTestAnnotationHelper.ssp.sql
8989
tSQLt.(at)tSQLt_SkipTest.sfn.sql
9090
tSQLt.(at)tSQLt_MinSqlMajorVersion.sfn.sql
9191
tSQLt.(at)tSQLt_MaxSqlMajorVersion.sfn.sql
92+
tSQLt.(at)tSQLt_RunOnlyOnHostPlatform.sfn.sql
9293
tSQLt.RemoveExternalAccessKey.ssp.sql
9394
tSQLt.InstallExternalAccessKey.ssp.sql
9495
tSQLt._Footer.sql

Source/Source.ssmssqlproj

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,12 @@
5555
<AssociatedConnUserName />
5656
<FullPath>tSQLt.(at)tSQLt_MinSqlMajorVersion.sfn.sql</FullPath>
5757
</FileNode>
58+
<FileNode Name="tSQLt.(at)tSQLt_RunOnlyOnHostPlatform.sfn.sql">
59+
<AssociatedConnectionMoniker>8c91a03d-f9b4-46c0-a305-b5dcc79ff907:Dev_tSQLt:True</AssociatedConnectionMoniker>
60+
<AssociatedConnSrvName>Dev_tSQLt</AssociatedConnSrvName>
61+
<AssociatedConnUserName />
62+
<FullPath>tSQLt.(at)tSQLt_RunOnlyOnHostPlatform.sfn.sql</FullPath>
63+
</FileNode>
5864
<FileNode Name="tSQLt.(at)tSQLt_SkipTest.sfn.sql">
5965
<AssociatedConnectionMoniker>8c91a03d-f9b4-46c0-a305-b5dcc79ff907:Dev_tSQLt:True</AssociatedConnectionMoniker>
6066
<AssociatedConnSrvName>Dev_tSQLt</AssociatedConnSrvName>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
IF OBJECT_ID('tSQLt.[@tSQLt:RunOnlyOnHostPlatform]') IS NOT NULL DROP FUNCTION tSQLt.[@tSQLt:RunOnlyOnHostPlatform];
2+
GO
3+
---Build+
4+
GO
5+
CREATE FUNCTION tSQLt.[@tSQLt:RunOnlyOnHostPlatform](@HostPlatform NVARCHAR(MAX))
6+
RETURNS TABLE
7+
AS
8+
RETURN
9+
SELECT SkipTestFunction.*
10+
FROM (SELECT PSV.HostPlatform FROM tSQLt.Private_SqlVersion() AS PSV WHERE PSV.HostPlatform <> @HostPlatform) AV
11+
CROSS APPLY tSQLt.[@tSQLt:SkipTest]('HostPlatform is required to be '''+
12+
@HostPlatform +
13+
''', but is '''+
14+
AV.HostPlatform +
15+
'''.'
16+
) AS SkipTestFunction;
17+
GO
18+
---Build-
19+
GO
20+

Source/tSQLt.EnableExternalAccess.ssp.sql

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ CREATE PROCEDURE tSQLt.EnableExternalAccess
77
@enable BIT = 1
88
AS
99
BEGIN
10+
IF((SELECT HostPlatform FROM tSQLt.Info()) = 'Linux')
11+
BEGIN
12+
IF(@try = 0)
13+
BEGIN
14+
RAISERROR('tSQLt.EnableExternalAccess is not supported on Linux.',16,10);
15+
END;
16+
RETURN -1;
17+
END;
1018
BEGIN TRY
1119
IF @enable = 1
1220
BEGIN

Source/tSQLt.Info.sfn.sql

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,14 @@ SELECT Version = '$LATEST-BUILD-NUMBER$',
1212
ClrSigningKey = (SELECT tSQLt.Private::SigningKey()),
1313
V.SqlVersion,
1414
V.SqlBuild,
15-
V.SqlEdition
15+
V.SqlEdition,
16+
V.HostPlatform
1617
FROM
1718
(
1819
SELECT CAST(PSSV.Major+'.'+PSSV.Minor AS NUMERIC(10,2)) AS SqlVersion,
1920
CAST(PSSV.Build+'.'+PSSV.Revision AS NUMERIC(10,2)) AS SqlBuild,
20-
PSV.Edition AS SqlEdition
21+
PSV.Edition AS SqlEdition,
22+
PSV.HostPlatform
2123
FROM tSQLt.Private_SqlVersion() AS PSV
2224
CROSS APPLY tSQLt.Private_SplitSqlVersion(PSV.ProductVersion) AS PSSV
2325
)V;

Source/tSQLt.Private_Init.ssp.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ BEGIN
2222
RETURN;
2323
END;
2424

25-
IF((SELECT SqlEdition FROM tSQLt.Info()) <> 'SQL Azure')
25+
IF(NOT EXISTS(SELECT 1 FROM tSQLt.Info() WHERE SqlEdition = 'SQL Azure'))
2626
BEGIN
2727
EXEC tSQLt.EnableExternalAccess @enable = @enable, @try = 1;
2828
END;

Source/tSQLt.Private_SqlVersion.sfn.sql

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,11 @@ CREATE FUNCTION tSQLt.Private_SqlVersion()
66
RETURNS TABLE
77
AS
88
RETURN
9-
SELECT CAST(SERVERPROPERTY('ProductVersion')AS NVARCHAR(128)) ProductVersion,
10-
CAST(SERVERPROPERTY('Edition')AS NVARCHAR(128)) Edition;
9+
SELECT
10+
CAST(SERVERPROPERTY('ProductVersion')AS NVARCHAR(128)) ProductVersion,
11+
CAST(SERVERPROPERTY('Edition')AS NVARCHAR(128)) Edition,
12+
host_platform HostPlatform
13+
FROM sys.dm_os_host_info;
1114
GO
1215
---Build-
1316
GO

TestUtil/tSQLt_testutil.class.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -328,7 +328,7 @@ BEGIN
328328
BEGIN
329329
EXEC tSQLt.Private_Print @Message = 'MultiRunLog is empty.', @Severity = 16
330330
END;
331-
IF(EXISTS(SELECT * FROM tSQLt_testutil.MultiRunLog AS MRL WHERE MRL.Success = 0 AND MRL.Failure = 0 AND MRL.Error = 0))
331+
IF(EXISTS(SELECT * FROM tSQLt_testutil.MultiRunLog AS MRL WHERE MRL.Success = 0 AND MRL.Skipped = 0))
332332
BEGIN
333333
EXEC tSQLt.Private_Print @Message = 'MultiRunLog contains Run without tests.', @Severity = 16
334334
END;

TestUtilTests/tSQLt_testutil_test.class.sql

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,40 @@ BEGIN
388388

389389
END
390390
GO
391+
CREATE PROCEDURE tSQLt_testutil_test.[ptest CheckMultiRunResults doesn't throw error if]
392+
@success INT = 0,
393+
@skipped INT = 0,
394+
@failed INT = 0,
395+
@errored INT = 0
396+
AS
397+
BEGIN
398+
EXEC tSQLt_testutil_test.[Create and fake tSQLt_testutil.PrepMultiRunLogTable];
399+
INSERT INTO tSQLt_testutil.MultiRunLog(Success,Skipped,Failure,Error)
400+
VALUES(@success,@skipped,@failed,@errored);
401+
402+
SELECT TOP(0)*
403+
INTO #Actual
404+
FROM tSQLt_testutil.MultiRunLog AS MRL;
405+
406+
EXEC tSQLt.ExpectNoException;
407+
408+
INSERT INTO #Actual
409+
EXEC tSQLt_testutil.CheckMultiRunResults;
410+
411+
END
412+
GO
413+
CREATE PROCEDURE tSQLt_testutil_test.[test CheckMultiRunResults doesn't throw error if a success exists]
414+
AS
415+
BEGIN
416+
EXEC tSQLt_testutil_test.[ptest CheckMultiRunResults doesn't throw error if] @success=1;
417+
END
418+
GO
419+
CREATE PROCEDURE tSQLt_testutil_test.[test CheckMultiRunResults doesn't throw error if a skip exists]
420+
AS
421+
BEGIN
422+
EXEC tSQLt_testutil_test.[ptest CheckMultiRunResults doesn't throw error if] @skipped=1;
423+
END
424+
GO
391425
CREATE PROCEDURE tSQLt_testutil_test.[test LogMultiRunResult captures all results]
392426
AS
393427
BEGIN

Tests.EXTERNAL_ACCESS/Run_Methods_Tests_EA.class.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ CREATE TABLE Run_Methods_Tests_EA.[table 4 tSQLt.Private_InputBuffer tests](
44
InputBuffer NVARCHAR(MAX)
55
);
66
GO
7+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
78
CREATE PROCEDURE Run_Methods_Tests_EA.[test tSQLt.Private_InputBuffer returns actual INPUTBUFFER]
89
AS
910
BEGIN

Tests.EXTERNAL_ACCESS/tSQLtclr_test.class.sql

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,7 @@
1515
*/
1616
EXEC tSQLt.NewTestClass 'tSQLtclr_tests_EA';
1717
GO
18-
19-
20-
18+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
2119
CREATE PROC tSQLtclr_tests_EA.[test NewConnection executes a command in a new process]
2220
AS
2321
BEGIN

Tests.EXTERNAL_ACCESS_KEY_EXISTS/EnableExternalAccessTests.class.sql

Lines changed: 39 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
EXEC tSQLt.NewTestClass 'EnableExternalAccessTests';
22
GO
3+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
34
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess sets PERMISSION_SET to EXTERNAL_ACCESS if called without parameters]
45
AS
56
BEGIN
@@ -13,6 +14,7 @@ BEGIN
1314
EXEC tSQLt.AssertEqualsString @Expected = 'EXTERNAL_ACCESS', @Actual = @Actual;
1415
END;
1516
GO
17+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
1618
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess reports meaningful error with details, if setting fails]
1719
AS
1820
BEGIN
@@ -28,6 +30,7 @@ BEGIN
2830
EXEC tSQLt.EnableExternalAccess;
2931
END;
3032
GO
33+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
3134
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess sets PERMISSION_SET to SAFE if @enable = 0]
3235
AS
3336
BEGIN
@@ -96,20 +99,23 @@ BEGIN
9699
EXEC tSQLt.AssertEqualsTable '#Expected','#Actual';
97100
END;
98101
GO
99-
102+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
100103
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess reports meaningful error if disabling fails]
101104
AS
102105
BEGIN
103106
ALTER ASSEMBLY tSQLtCLR WITH PERMISSION_SET = EXTERNAL_ACCESS;
104107

105-
DECLARE @cmd NVARCHAR(MAX);
106-
SELECT @cmd = SM.definition FROM sys.sql_modules AS SM WHERE SM.object_id = OBJECT_ID('tSQLt.EnableExternalAccess');
108+
DECLARE @cmdEEA NVARCHAR(MAX);
109+
SELECT @cmdEEA = SM.definition FROM sys.sql_modules AS SM WHERE SM.object_id = OBJECT_ID('tSQLt.EnableExternalAccess');
110+
DECLARE @cmdInfo NVARCHAR(MAX);
111+
SELECT @cmdInfo = 'CREATE FUNCTION tSQLt.Info() RETURNS TABLE AS RETURN SELECT ''Windows'' HostPlatform;';
107112

108113
DECLARE @TranName VARCHAR(32);SET @TranName = REPLACE((CAST(NEWID() AS VARCHAR(36))),'-','');
109114
SAVE TRAN @TranName;
110115
EXEC tSQLt.Uninstall;
111116
EXEC('CREATE SCHEMA tSQLt;');
112-
EXEC(@cmd);
117+
EXEC(@cmdEEA);
118+
EXEC(@cmdInfo);
113119

114120
DECLARE @Actual NVARCHAR(MAX);SET @Actual = 'No error raised!';
115121
BEGIN TRY
@@ -123,7 +129,6 @@ BEGIN
123129
EXEC tSQLt.AssertLike @ExpectedPattern = 'The attempt to disable tSQLt features requiring EXTERNAL_ACCESS failed: %tSQLtCLR%', @Actual = @Actual;
124130
END;
125131
GO
126-
127132
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess returns -1, if @try = 1 and setting fails]
128133
AS
129134
BEGIN
@@ -138,7 +143,7 @@ BEGIN
138143
EXEC tSQLt.AssertEquals -1,@Actual;
139144
END;
140145
GO
141-
146+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
142147
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess returns 0, if @try = 1 and setting is successful]
143148
AS
144149
BEGIN
@@ -150,5 +155,33 @@ BEGIN
150155
EXEC tSQLt.AssertEquals 0,@Actual;
151156
END;
152157
GO
158+
CREATE FUNCTION EnableExternalAccessTests.[HostPlatform Linux]()
159+
RETURNS TABLE
160+
AS
161+
RETURN SELECT '1' Version, '1' ClrVersion, NULL SqlVersion, NULL SqlBuild, 'Developer Edition (64-bit)' SqlEdition, 'Linux' HostPlatform;
162+
GO
163+
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess reports meaningful error if HostPlatform is Linux]
164+
AS
165+
BEGIN
166+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Info', @FakeFunctionName = 'EnableExternalAccessTests.[HostPlatform Linux]';
167+
168+
DECLARE @ExpectedMessagePattern NVARCHAR(MAX) =
169+
'tSQLt.EnableExternalAccess is not supported on Linux.';
170+
171+
EXEC tSQLt.ExpectException @ExpectedMessagePattern = @ExpectedMessagePattern;
172+
EXEC tSQLt.EnableExternalAccess;
173+
END;
174+
GO
175+
CREATE PROCEDURE EnableExternalAccessTests.[test tSQLt.EnableExternalAccess returns -1, if @try = 1 and HostPlatform is Linux]
176+
AS
177+
BEGIN
178+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Info', @FakeFunctionName = 'EnableExternalAccessTests.[HostPlatform Linux]';
179+
180+
DECLARE @Actual INT;
181+
EXEC @Actual = tSQLt.EnableExternalAccess @try = 1;
182+
183+
EXEC tSQLt.AssertEquals -1,@Actual;
184+
END;
185+
GO
153186

154187

Tests.EXTERNAL_ACCESS_KEY_EXISTS/Private_InitTests_EAKE.class.sql

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
EXEC tSQLt.NewTestClass 'Private_InitTests_EAKE';
22
GO
3+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
34
CREATE PROCEDURE Private_InitTests_EAKE.[test Private_Init enables external access if possible]
45
AS
56
BEGIN
@@ -61,7 +62,7 @@ GO
6162
CREATE FUNCTION Private_InitTests_EAKE.[SQL Azure Edition]()
6263
RETURNS TABLE
6364
AS
64-
RETURN SELECT '1' Version, '1' ClrVersion, NULL SqlVersion, NULL SqlBuild, 'SQL Azure' SqlEdition;
65+
RETURN SELECT '1' Version, '1' ClrVersion, NULL SqlVersion, NULL SqlBuild, 'SQL Azure' SqlEdition, 'Windows' HostPlatform;
6566
GO
6667
CREATE PROCEDURE Private_InitTests_EAKE.[test does not call EnableExternalAccess if Edition='SQL Azure']
6768
AS
@@ -76,3 +77,8 @@ BEGIN
7677

7778
END;
7879
GO
80+
CREATE FUNCTION Private_InitTests_EAKE.[HostPlatform Linux]()
81+
RETURNS TABLE
82+
AS
83+
RETURN SELECT '1' Version, '1' ClrVersion, NULL SqlVersion, NULL SqlBuild, 'Developer Edition (64-bit)' SqlEdition, 'Linux' HostPlatform;
84+
GO

Tests.SA/InstallAssemblyKeyTests.class.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,6 +334,7 @@ BEGIN
334334

335335
END;
336336
GO
337+
--[@tSQLt:RunOnlyOnHostPlatform]('Windows')
337338
CREATE PROCEDURE InstallAssemblyKeyTests.[test tSQLt can be set to EXTERNAL ACCESS after InstallAssemblyKey executed]
338339
AS
339340
BEGIN
Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
EXEC tSQLt.NewTestClass 'AnnotationHostPlatformTests';
2+
GO
3+
CREATE FUNCTION AnnotationHostPlatformTests.[SomePlatform]()
4+
RETURNS TABLE
5+
AS
6+
RETURN SELECT NULL AS ProductVersion, NULL AS Edition, 'SomePlatform' AS HostPlatform;
7+
GO
8+
CREATE FUNCTION AnnotationHostPlatformTests.[Platform13]()
9+
RETURNS TABLE
10+
AS
11+
RETURN SELECT NULL AS ProductVersion, NULL AS Edition, 'Platform13' AS HostPlatform;
12+
GO
13+
CREATE PROCEDURE AnnotationHostPlatformTests.[test allows test to execute if actual host platform is equal to the provided one]
14+
AS
15+
BEGIN
16+
EXEC tSQLt.NewTestClass 'MyInnerTests'
17+
EXEC('
18+
--[@'+'tSQLt:RunOnlyOnHostPlatform](''SomePlatform'')
19+
CREATE PROCEDURE MyInnerTests.[test should execute] AS RAISERROR(''test executed'',16,10);
20+
');
21+
22+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Private_SqlVersion', @FakeFunctionName = 'AnnotationHostPlatformTests.[SomePlatform]';
23+
24+
25+
EXEC tSQLt_testutil.AssertTestErrors
26+
@TestName = 'MyInnerTests.[test should execute]',
27+
@ExpectedMessage = 'test executed%';
28+
END;
29+
GO
30+
CREATE PROCEDURE AnnotationHostPlatformTests.[test doesn't allow test to execute if actual host platform is not equal to the provided one]
31+
AS
32+
BEGIN
33+
EXEC tSQLt.NewTestClass 'MyInnerTests'
34+
EXEC('
35+
--[@'+'tSQLt:RunOnlyOnHostPlatform](''AnotherPlatform'')
36+
CREATE PROCEDURE MyInnerTests.[test should not execute] AS RAISERROR(''test executed'',16,10);
37+
');
38+
39+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Private_SqlVersion', @FakeFunctionName = 'AnnotationHostPlatformTests.[SomePlatform]';
40+
41+
42+
EXEC tSQLt_testutil.AssertTestSkipped
43+
@TestName = 'MyInnerTests.[test should not execute]';
44+
END;
45+
GO
46+
CREATE PROCEDURE AnnotationHostPlatformTests.[test provides a useful skip reason]
47+
AS
48+
BEGIN
49+
EXEC tSQLt.NewTestClass 'MyInnerTests'
50+
EXEC('
51+
--[@'+'tSQLt:RunOnlyOnHostPlatform](''AnotherPlatform'')
52+
CREATE PROCEDURE MyInnerTests.[test should not execute] AS RAISERROR(''test executed'',16,10);
53+
');
54+
55+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Private_SqlVersion', @FakeFunctionName = 'AnnotationHostPlatformTests.[SomePlatform]';
56+
57+
58+
EXEC tSQLt_testutil.AssertTestSkipped
59+
@TestName = 'MyInnerTests.[test should not execute]',
60+
@ExpectedMessage = 'HostPlatform is required to be ''AnotherPlatform'', but is ''SomePlatform''.'
61+
END;
62+
GO
63+
CREATE PROCEDURE AnnotationHostPlatformTests.[test includes current and required HostPlatform in reason message]
64+
AS
65+
BEGIN
66+
EXEC tSQLt.NewTestClass 'MyInnerTests'
67+
EXEC('
68+
--[@'+'tSQLt:RunOnlyOnHostPlatform](''Platform17'')
69+
CREATE PROCEDURE MyInnerTests.[test should not execute] AS RAISERROR(''test executed'',16,10);
70+
');
71+
72+
EXEC tSQLt.FakeFunction @FunctionName = 'tSQLt.Private_SqlVersion', @FakeFunctionName = 'AnnotationHostPlatformTests.[Platform13]';
73+
74+
75+
EXEC tSQLt_testutil.AssertTestSkipped
76+
@TestName = 'MyInnerTests.[test should not execute]',
77+
@ExpectedMessage = 'HostPlatform is required to be ''Platform17'', but is ''Platform13''.'
78+
END;
79+
GO

Tests/AnnotationSqlServerVersionTests.class.sql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ GO
33
CREATE FUNCTION AnnotationSqlServerVersionTests.[42.17.1986.57]()
44
RETURNS TABLE
55
AS
6-
RETURN SELECT CAST(N'42.17.1986.57' AS NVARCHAR(128)) AS ProductVersion, 'My Edition' AS Edition;
6+
RETURN SELECT CAST(N'42.17.1986.57' AS NVARCHAR(128)) AS ProductVersion, 'My Edition' AS Edition, NULL AS HostPlatform;
77
GO
88
CREATE FUNCTION AnnotationSqlServerVersionTests.[13.0.1986.57]()
99
RETURNS TABLE
1010
AS
11-
RETURN SELECT CAST(N'13.0.1986.57' AS NVARCHAR(128)) AS ProductVersion, 'My Edition' AS Edition;
11+
RETURN SELECT CAST(N'13.0.1986.57' AS NVARCHAR(128)) AS ProductVersion, 'My Edition' AS Edition, NULL AS HostPlatform;
1212
GO
1313
CREATE PROCEDURE AnnotationSqlServerVersionTests.[test MinSqlMajorVersion allows test to execute if actual version is larger]
1414
AS

0 commit comments

Comments
 (0)