-
-
Notifications
You must be signed in to change notification settings - Fork 831
/
Copy pathAdd-DbaRegServer.Tests.ps1
103 lines (88 loc) · 3.42 KB
/
Add-DbaRegServer.Tests.ps1
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
#Requires -Module @{ ModuleName="Pester"; ModuleVersion="5.0"}
param(
$ModuleName = "dbatools",
$PSDefaultParameterValues = ($TestConfig = Get-TestConfig).Defaults
)
Describe "Add-DbaRegServer" -Tag "UnitTests" {
Context "Parameter validation" {
BeforeAll {
$command = Get-Command Add-DbaRegServer
$expected = $TestConfig.CommonParameters
$expected += @(
"SqlInstance",
"SqlCredential",
"ServerName",
"Name",
"Description",
"Group",
"ActiveDirectoryTenant",
"ActiveDirectoryUserId",
"ConnectionString",
"OtherParams",
"InputObject",
"ServerObject",
"EnableException",
"Confirm",
"WhatIf"
)
}
It "Has parameter: <_>" -ForEach $expected {
$command | Should -HaveParameter $PSItem
}
It "Should have exactly the number of expected parameters ($($expected.Count))" {
$hasparms = $command.Parameters.Values.Name
Compare-Object -ReferenceObject $expected -DifferenceObject $hasparms | Should -BeNullOrEmpty
}
}
}
Describe "Add-DbaRegServer" -Tag "IntegrationTests" {
BeforeAll {
$srvName = "dbatoolsci-server1"
$group = "dbatoolsci-group1"
$regSrvName = "dbatoolsci-server12"
$regSrvDesc = "dbatoolsci-server123"
$groupobject = Add-DbaRegServerGroup -SqlInstance $TestConfig.instance1 -Name $group
}
AfterAll {
Get-DbaRegServer -SqlInstance $TestConfig.instance1, $TestConfig.instance2 | Where-Object Name -match dbatoolsci | Remove-DbaRegServer -Confirm:$false
Get-DbaRegServerGroup -SqlInstance $TestConfig.instance1, $TestConfig.instance2 | Where-Object Name -match dbatoolsci | Remove-DbaRegServerGroup -Confirm:$false
}
Context "When adding a registered server" {
BeforeAll {
$results1 = Add-DbaRegServer -SqlInstance $TestConfig.instance1 -ServerName $srvName
}
It "Adds a registered server with correct name" {
$results1.Name | Should -Be $srvName
}
It "Adds a registered server with correct server name" {
$results1.ServerName | Should -Be $srvName
}
It "Adds a registered server with non-null SqlInstance" {
$results1.SqlInstance | Should -Not -BeNullOrEmpty
}
}
Context "When adding a registered server with extended properties" {
BeforeAll {
$splat = @{
SqlInstance = $TestConfig.instance1
ServerName = $regSrvName
Name = $srvName
Group = $groupobject
Description = $regSrvDesc
}
$results2 = Add-DbaRegServer @splat
}
It "Adds a registered server with correct server name" {
$results2.ServerName | Should -Be $regSrvName
}
It "Adds a registered server with correct description" {
$results2.Description | Should -Be $regSrvDesc
}
It "Adds a registered server with correct name" {
$results2.Name | Should -Be $srvName
}
It "Adds a registered server with non-null SqlInstance" {
$results2.SqlInstance | Should -Not -BeNullOrEmpty
}
}
}