Skip to content

Commit a1e8795

Browse files
committed
(MODULES-2469) skip test because bug MODULES-2543
1 parent 189db7f commit a1e8795

File tree

1 file changed

+51
-45
lines changed

1 file changed

+51
-45
lines changed

spec/acceptance/sqlserver_role_spec.rb

Lines changed: 51 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515
describe "Test sqlserver::role", :node => host do
1616

17-
1817
def ensure_sqlserver_logins_users(host)
1918
pp = <<-MANIFEST
2019
sqlserver::config{'MSSQLSERVER':
@@ -24,18 +23,17 @@ def ensure_sqlserver_logins_users(host)
2423
sqlserver::database{ '#{DB_NAME}':
2524
}
2625
sqlserver::login{'#{LOGIN1}':
27-
login_type => 'SQL_LOGIN',
28-
password => 'Pupp3t1@',
26+
login_type => 'SQL_LOGIN',
27+
password => 'Pupp3t1@',
2928
}
3029
sqlserver::login{'#{LOGIN2}':
31-
login_type => 'SQL_LOGIN',
32-
password => 'Pupp3t1@',
30+
login_type => 'SQL_LOGIN',
31+
password => 'Pupp3t1@',
3332
}
3433
sqlserver::login{'#{LOGIN3}':
35-
login_type => 'SQL_LOGIN',
36-
password => 'Pupp3t1@',
34+
login_type => 'SQL_LOGIN',
35+
password => 'Pupp3t1@',
3736
}
38-
3937
sqlserver::user{'#{USER1}':
4038
database => '#{DB_NAME}',
4139
user => '#{USER1}',
@@ -49,26 +47,44 @@ def ensure_sqlserver_logins_users(host)
4947
end
5048
end
5149

52-
context "Test sqlser::role", {:testrail => ['89161', '89162', '89163', '89164', '89165']} do
50+
context "Start testing sqlserver::role", {:testrail => ['89161', '89162', '89163', '89164', '89165']} do
5351
before(:all) do
5452
# Create database users
5553
ensure_sqlserver_logins_users(host)
5654
end
5755
before(:each) do
58-
#@new_sql_login = "Login" + SecureRandom.hex(2)
5956
@role = "Role_" + SecureRandom.hex(2)
6057
end
58+
after(:each) do
59+
pp = <<-MANIFEST
60+
sqlserver::config{'MSSQLSERVER':
61+
admin_user => 'sa',
62+
admin_pass => 'Pupp3t1@',
63+
}
64+
sqlserver::role{'#{@role}':
65+
ensure => 'absent',
66+
}
67+
MANIFEST
68+
apply_manifest_on(host, pp) do |r|
69+
expect(r.stderr).not_to match(/Error/i)
70+
end
71+
end
6172

6273
after(:all) do
63-
# remove the newly created database
74+
# remove all newly created logins
6475
pp = <<-MANIFEST
65-
sqlserver::database{ '#{DB_NAME}':
66-
ensure => 'absent',
76+
sqlserver::config{'MSSQLSERVER':
77+
admin_user => 'sa',
78+
admin_pass => 'Pupp3t1@',
79+
}
80+
sqlserver::user{'#{USER1}':
81+
database => '#{DB_NAME}',
82+
ensure => 'absent',
6783
}
6884
MANIFEST
69-
# apply_manifest_on(host, pp) do |r|
70-
# expect(r.stderr).not_to match(/Error/i)
71-
# end
85+
apply_manifest_on(host, pp) do |r|
86+
expect(r.stderr).not_to match(/Error/i)
87+
end
7288
end
7389

7490
it "Create server role #{@role} with optional authorization" do
@@ -111,7 +127,7 @@ def ensure_sqlserver_logins_users(host)
111127
run_sql_query(host, { :query => query, :server => hostname, :expected_row_count => 1 })
112128
end
113129

114-
it "Create database-specific role: #{@role}" do
130+
it "Create database-specific role #{@role}" do
115131
pp = <<-MANIFEST
116132
sqlserver::config{'MSSQLSERVER':
117133
admin_user => 'sa',
@@ -141,7 +157,8 @@ def ensure_sqlserver_logins_users(host)
141157
run_sql_query(host, { :query => query, :server => hostname, :expected_row_count => 6 })
142158
end
143159

144-
it "Create server role #{@role} with optional members" do
160+
# temporarily skip this test because of ticket MODULES-2543
161+
xit "Create server role #{@role} with optional members and optional members-purge" do
145162
pp = <<-MANIFEST
146163
sqlserver::config{'MSSQLSERVER':
147164
admin_user => 'sa',
@@ -162,7 +179,7 @@ def ensure_sqlserver_logins_users(host)
162179

163180
#validate that the server role '#{@role}' is successfully created with specified permissions':
164181
query = "USE #{DB_NAME};
165-
SELECT spr.principal_id, spr.name,
182+
SELECT spr.principal_id AS ID, spr.name AS Server_Role,
166183
spe.state_desc, spe.permission_name
167184
FROM sys.server_principals AS spr
168185
JOIN sys.server_permissions AS spe
@@ -173,20 +190,18 @@ def ensure_sqlserver_logins_users(host)
173190

174191
#validate that the t server role '#{@role}' has correct members (Login1, 2, 3)
175192
query = "USE #{DB_NAME};
176-
SELECT sp1.principal_id AS LOGIN, sp1.name AS ServerRole
177-
FROM sys.server_principals sp1
193+
SELECT spr.principal_id AS ID, spr.name AS ServerRole
194+
FROM sys.server_principals AS spr
178195
JOIN sys.server_role_members m
179-
ON sp1.principal_id = m.member_principal_id
180-
JOIN sys.server_principals sp2
181-
ON m.role_principal_id = sp2.principal_id
182-
WHERE sp1.name = '#{LOGIN1}'
183-
OR sp1.name = '#{LOGIN2}'
184-
OR sp1.name = '#{LOGIN3}';"
196+
ON spr.principal_id = m.member_principal_id
197+
WHERE spr.name = '#{LOGIN1}'
198+
OR spr.name = '#{LOGIN2}'
199+
OR spr.name = '#{LOGIN3}'
200+
OR spr.name = 'LOGIN4';"
185201

186202
run_sql_query(host, { :query => query, :server => hostname, :expected_row_count => 3 })
187-
end
188203

189-
it "Create server role #{@role} with optional members_purge" do
204+
puts "Create server role #{@role} with optional members_purge:"
190205
pp = <<-MANIFEST
191206
sqlserver::config{'MSSQLSERVER':
192207
admin_user => 'sa',
@@ -206,26 +221,17 @@ def ensure_sqlserver_logins_users(host)
206221
expect(r.stderr).not_to match(/Error/i)
207222
end
208223

209-
#validate that the server role '#{@role}' is successfully created with specified permissions':
224+
#validate that the t server role '#{@role}' has correct members (only Login3)
210225
query = "USE #{DB_NAME};
211-
SELECT spr.principal_id, spr.name,
212-
spe.state_desc, spe.permission_name
226+
SELECT spr.principal_id AS ID, spr.name AS ServerRole
213227
FROM sys.server_principals AS spr
214-
JOIN sys.server_permissions AS spe
215-
ON spe.grantee_principal_id = spr.principal_id
216-
WHERE spr.name = '#{@role}';"
217-
218-
run_sql_query(host, { :query => query, :server => hostname, :expected_row_count => 2 })
219-
220-
#validate that the t server role '#{@role}' has correct members (Login3)
221-
query = "USE #{DB_NAME};
222-
SELECT sp1.principal_id AS ID, sp1.name AS Logins
223-
FROM sys.server_principals sp1
224228
JOIN sys.server_role_members m
225-
ON sp1.principal_id = m.member_principal_id
226-
where sp1.name = '#{@role}';"
229+
ON spr.principal_id = m.member_principal_id
230+
WHERE spr.name = '#{LOGIN1}'
231+
OR spr.name = '#{LOGIN2}'
232+
OR spr.name = '#{LOGIN3}';"
227233

228234
run_sql_query(host, { :query => query, :server => hostname, :expected_row_count => 1 })
229235
end
230236
end
231-
end
237+
end

0 commit comments

Comments
 (0)