-
Notifications
You must be signed in to change notification settings - Fork 110
Expand file tree
/
Copy pathTestClassesTest.class.sql
More file actions
124 lines (97 loc) · 3.47 KB
/
Copy pathTestClassesTest.class.sql
File metadata and controls
124 lines (97 loc) · 3.47 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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
EXEC tSQLt.NewTestClass @ClassName = 'TestClassesTests';
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns a class that is owned by 'tSQLt.TestClass']
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
EXEC ('CREATE SCHEMA tSQLtTestDummyA AUTHORIZATION [tSQLt.TestClass];');
SELECT Name
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) A.* INTO #Expected FROM #Actual A RIGHT JOIN #Actual X ON 1=0;
INSERT INTO #Expected(Name) VALUES ('tSQLtTestDummyA');
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns test classes of all types]
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
EXEC ('CREATE SCHEMA tSQLtTestDummyA AUTHORIZATION [tSQLt.TestClass];');
EXEC ('CREATE SCHEMA tSQLtTestDummyB AUTHORIZATION [tSQLt.TestClass];');
EXEC ('CREATE SCHEMA tSQLtTestDummyC AUTHORIZATION [tSQLt.TestClass];');
EXEC tSQLt.NewTestClass 'tSQLtTestDummyD';
EXEC tSQLt.NewTestClass 'tSQLtTestDummyE';
SELECT Name
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) A.* INTO #Expected FROM #Actual A RIGHT JOIN #Actual X ON 1=0;
INSERT INTO #Expected(Name)
VALUES ('tSQLtTestDummyA'),
('tSQLtTestDummyB'),
('tSQLtTestDummyC'),
('tSQLtTestDummyD'),
('tSQLtTestDummyE');
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns no test classes when there are no test classes]
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
SELECT *
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) *
INTO #Expected
FROM #Actual;
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns single test class]
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
EXEC tSQLt.NewTestClass 'tSQLt_test_dummy_A';
SELECT Name
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) *
INTO #Expected
FROM #Actual;
INSERT INTO #Expected(Name) VALUES ('tSQLt_test_dummy_A');
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns multiple test classes]
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
EXEC tSQLt.NewTestClass 'tSQLt_test_dummy_A';
EXEC tSQLt.NewTestClass 'tSQLt_test_dummy_B';
SELECT Name
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) *
INTO #Expected
FROM #Actual;
INSERT INTO #Expected(Name) VALUES ('tSQLt_test_dummy_A');
INSERT INTO #Expected(Name) VALUES ('tSQLt_test_dummy_B');
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO
CREATE PROCEDURE TestClassesTests.[test tSQLt.TestClasses returns other important columns]
AS
BEGIN
EXEC tSQLt_testutil.RemoveTestClassPropertyFromAllExistingClasses;
EXEC tSQLt.NewTestClass 'tSQLt_test_dummy_A';
SELECT Name,SchemaId
INTO #Actual
FROM tSQLt.TestClasses;
SELECT TOP(0) *
INTO #Expected
FROM #Actual;
INSERT INTO #Expected(Name, SchemaId) VALUES ('tSQLt_test_dummy_A',SCHEMA_ID('tSQLt_test_dummy_A'));
EXEC tSQLt.AssertEqualsTable @Expected = '#Expected', @Actual = '#Actual';
END;
GO