Skip to content

Commit 537f663

Browse files
committed
Enhance integration tests for Get-SqlDscRSIPAddress and Get-SqlDscRSExecutionLog by adding validation for loopback addresses and updating tags for SQL Server versions.
1 parent cc27434 commit 537f663

3 files changed

Lines changed: 41 additions & 7 deletions

File tree

.vscode/settings.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,8 @@
109109
"hotfixes",
110110
"checkpointing",
111111
"HRESULT",
112-
"RSDB"
112+
"RSDB",
113+
"RSIP"
113114
],
114115
"cSpell.ignorePaths": [
115116
".git"

tests/Integration/Commands/Get-SqlDscRSExecutionLog.Integration.Tests.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ BeforeAll {
3030
}
3131

3232
Describe 'Get-SqlDscRSExecutionLog' {
33-
Context 'When querying execution log for SQL Server Reporting Services instance' -Tag @('Integration_SQL2019_RS', 'Integration_SQL2022_RS') {
33+
Context 'When querying execution log for SQL Server Reporting Services instance' -Tag @('Integration_SQL2017_RS', 'Integration_SQL2019_RS', 'Integration_SQL2022_RS') {
3434
It 'Should query the execution log without errors' {
3535
# Query may return empty results if no reports have been executed
3636
$result = Get-SqlDscRSExecutionLog -InstanceName 'SSRS' -MaxRows 10 -Force -ErrorAction 'Stop'

tests/Integration/Commands/Get-SqlDscRSIPAddress.Integration.Tests.ps1

Lines changed: 38 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,27 @@ BeforeAll {
3232
}
3333

3434
Describe 'Get-SqlDscRSIPAddress' {
35+
<#
36+
Note: CI environments contain dynamic IP addresses that change per run (e.g., 10.1.0.x, 172.x.x.x).
37+
We validate the command returns expected addresses and structure without checking for specific
38+
dynamic IPs. Loopback addresses (127.0.0.1) and IPv4/IPv6 support are consistent across runs.
39+
#>
40+
3541
Context 'When getting IP addresses for SQL Server Reporting Services' -Tag @('Integration_SQL2017_RS') {
3642
It 'Should return available IP addresses' {
3743
$configuration = Get-SqlDscRSConfiguration -InstanceName 'SSRS' -ErrorAction 'Stop'
3844
$result = $configuration | Get-SqlDscRSIPAddress -ErrorAction 'Stop'
3945

4046
$result | Should -Not -BeNullOrEmpty
41-
# Should at least contain the all-interfaces address
42-
$result.IPAddress | Should -Contain '0.0.0.0'
47+
48+
# Should contain loopback addresses (stable across CI workers)
49+
$result.IPAddress | Should -Contain '127.0.0.1'
50+
51+
# Should have IPv4 addresses
4352
$result.IPVersion | Should -Contain 'V4'
53+
54+
# Should have at least one additional IP besides loopback
55+
$result.Count | Should -BeGreaterThan 1
4456
}
4557
}
4658

@@ -50,8 +62,15 @@ Describe 'Get-SqlDscRSIPAddress' {
5062
$result = $configuration | Get-SqlDscRSIPAddress -ErrorAction 'Stop'
5163

5264
$result | Should -Not -BeNullOrEmpty
53-
$result.IPAddress | Should -Contain '0.0.0.0'
65+
66+
# Should contain loopback addresses (stable across CI workers)
67+
$result.IPAddress | Should -Contain '127.0.0.1'
68+
69+
# Should have IPv4 addresses
5470
$result.IPVersion | Should -Contain 'V4'
71+
72+
# Should have at least one additional IP besides loopback
73+
$result.Count | Should -BeGreaterThan 1
5574
}
5675
}
5776

@@ -61,8 +80,15 @@ Describe 'Get-SqlDscRSIPAddress' {
6180
$result = $configuration | Get-SqlDscRSIPAddress -ErrorAction 'Stop'
6281

6382
$result | Should -Not -BeNullOrEmpty
64-
$result.IPAddress | Should -Contain '0.0.0.0'
83+
84+
# Should contain loopback addresses (stable across CI workers)
85+
$result.IPAddress | Should -Contain '127.0.0.1'
86+
87+
# Should have IPv4 addresses
6588
$result.IPVersion | Should -Contain 'V4'
89+
90+
# Should have at least one additional IP besides loopback
91+
$result.Count | Should -BeGreaterThan 1
6692
}
6793
}
6894

@@ -72,8 +98,15 @@ Describe 'Get-SqlDscRSIPAddress' {
7298
$result = $configuration | Get-SqlDscRSIPAddress -ErrorAction 'Stop'
7399

74100
$result | Should -Not -BeNullOrEmpty
75-
$result.IPAddress | Should -Contain '0.0.0.0'
101+
102+
# Should contain loopback addresses (stable across CI workers)
103+
$result.IPAddress | Should -Contain '127.0.0.1'
104+
105+
# Should have IPv4 addresses
76106
$result.IPVersion | Should -Contain 'V4'
107+
108+
# Should have at least one additional IP besides loopback
109+
$result.Count | Should -BeGreaterThan 1
77110
}
78111
}
79112
}

0 commit comments

Comments
 (0)