1
+ # ----------------------------------------------------------------------------------
2
+ #
3
+ # Copyright Microsoft Corporation
4
+ # Licensed under the Apache License, Version 2.0 (the "License");
5
+ # you may not use this file except in compliance with the License.
6
+ # You may obtain a copy of the License at
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ # Unless required by applicable law or agreed to in writing, software
9
+ # distributed under the License is distributed on an "AS IS" BASIS,
10
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11
+ # See the License for the specific language governing permissions and
12
+ # limitations under the License.
13
+ # ----------------------------------------------------------------------------------
14
+
15
+ <#
16
+ . SYNOPSIS
17
+ Tests creating a server dns alias
18
+ #>
19
+
20
+ function Test-CreateServerDNSAlias
21
+ {
22
+ # Setup
23
+ $location = " East US 2 EUAP"
24
+ $rg = Create- ResourceGroupForTest $location
25
+ $server = Create- ServerForTest $rg $location
26
+
27
+ $serverDnsAliasName = Get-ServerDnsAliasName
28
+
29
+ try
30
+ {
31
+ $serverDnsAlias = New-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName
32
+ Assert-AreEqual $serverDnsAlias.ServerName $server.ServerName
33
+ Assert-AreEqual $serverDnsAlias.DnsAliasName $serverDnsAliasName
34
+ }
35
+ finally
36
+ {
37
+ Remove-ResourceGroupForTest $rg
38
+ }
39
+ }
40
+
41
+ <#
42
+ . SYNOPSIS
43
+ Tests getting server dns alias
44
+ #>
45
+
46
+ function Test-GetServerDNSAlias
47
+ {
48
+ # Setup
49
+ $location = " East US 2 EUAP"
50
+ $rg = Create- ResourceGroupForTest $location
51
+ $server = Create- ServerForTest $rg $location
52
+
53
+ $serverDnsAliasName = Get-ServerDnsAliasName
54
+ $serverDnsAliasName2 = Get-ServerDnsAliasName
55
+
56
+ try
57
+ {
58
+ # Create server dns alias 1
59
+ $serverDnsAlias = New-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName
60
+ Assert-AreEqual $serverDnsAlias.ServerName $server.ServerName
61
+ Assert-AreEqual $serverDnsAlias.DnsAliasName $serverDnsAliasName
62
+
63
+ # Create server dns alias 2
64
+ $serverDnsAlias = New-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName2
65
+ Assert-AreEqual $serverDnsAlias.ServerName $server.ServerName
66
+ Assert-AreEqual $serverDnsAlias.DnsAliasName $serverDnsAliasName2
67
+
68
+ # Get server dns alias
69
+ $resp = Get-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName
70
+ Assert-AreEqual $resp.ServerName $server.ServerName
71
+ Assert-AreEqual $resp.DnsAliasName $serverDnsAliasName
72
+
73
+ # Get list of server dns aliases for server
74
+ $resp = Get-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName
75
+ Assert-AreEqual $resp.Count 2
76
+ }
77
+ finally
78
+ {
79
+ Remove-ResourceGroupForTest $rg
80
+ }
81
+ }
82
+
83
+ <#
84
+ . SYNOPSIS
85
+ Tests removing server dns alias
86
+ #>
87
+
88
+ function Test-RemoveServerDNSAlias
89
+ {
90
+ # Setup
91
+ $location = " East US 2 EUAP"
92
+ $rg = Create- ResourceGroupForTest $location
93
+ $server = Create- ServerForTest $rg $location
94
+
95
+ $serverDnsAliasName = Get-ServerDnsAliasName
96
+
97
+ try
98
+ {
99
+ # Create Server DNS Alias
100
+ $serverDnsAlias = New-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName
101
+ Assert-AreEqual $serverDnsAlias.ServerName $server.ServerName
102
+ Assert-AreEqual $serverDnsAlias.DnsAliasName $serverDnsAliasName
103
+
104
+ # Remove Server DNS Alias
105
+ $resp = Remove-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName - Force
106
+ $all = Get-AzureRmSqlServerDNSAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName
107
+ Assert-AreEqual $all.Count 0
108
+ }
109
+ finally
110
+ {
111
+ Remove-ResourceGroupForTest $rg
112
+ }
113
+ }
114
+
115
+ <#
116
+ . SYNOPSIS
117
+ Tests updating server dns alias
118
+ #>
119
+
120
+ function Test-UpdateServerDNSAlias
121
+ {
122
+ # Setup
123
+ $location = " East US 2 EUAP"
124
+ $rg = Create- ResourceGroupForTest $location
125
+ $server = Create- ServerForTest $rg $location
126
+ $server2 = Create- ServerForTest $rg $location
127
+
128
+ $serverDnsAliasName = Get-ServerDnsAliasName
129
+
130
+ try
131
+ {
132
+ # Create Server DNS Alias
133
+ $serverDnsAlias = New-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server.ServerName - DnsAliasName $serverDnsAliasName
134
+ Assert-AreEqual $serverDnsAlias.ServerName $server.ServerName
135
+ Assert-AreEqual $serverDnsAlias.DnsAliasName $serverDnsAliasName
136
+
137
+ # Get current subscription id
138
+ $subId = (Get-AzureRmContext ).Subscription.Id
139
+
140
+ # Update Server DNS Alias
141
+ Set-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - SourceServerName $server.ServerName - DnsAliasName $serverDnsAliasName - TargetServerName $server2.ServerName - SourceServerResourceGroupName $rg.ResourceGroupName - SourceServerSubscriptionId $subId
142
+
143
+ $resp = Get-AzureRmSqlServerDnsAlias - ResourceGroupName $rg.ResourceGroupName - ServerName $server2.ServerName - DnsAliasName $serverDnsAliasName
144
+ Assert-AreEqual $resp.ServerName $server2.ServerName
145
+ Assert-AreEqual $resp.DnsAliasName $serverDnsAliasName
146
+ }
147
+ finally
148
+ {
149
+ Remove-ResourceGroupForTest $rg
150
+ }
151
+ }
0 commit comments