File tree Expand file tree Collapse file tree 2 files changed +22
-0
lines changed
Expand file tree Collapse file tree 2 files changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -150,6 +150,16 @@ function Set-SqlDscDatabaseOwner
150150 try
151151 {
152152 $sqlDatabaseObject.SetOwner ($OwnerName )
153+
154+ <#
155+ Refresh the database object to get the updated owner property if:
156+ - PassThru is specified (user wants the updated object back)
157+ - Using DatabaseObject parameter set (user's object reference should be updated)
158+ #>
159+ if ($PassThru.IsPresent -or $PSCmdlet.ParameterSetName -eq ' DatabaseObjectSet' )
160+ {
161+ $sqlDatabaseObject.Refresh ()
162+ }
153163 }
154164 catch
155165 {
Original file line number Diff line number Diff line change @@ -72,6 +72,9 @@ Describe 'Set-SqlDscDatabaseOwner' -Tag 'Public' {
7272 param ($OwnerName )
7373 $this.Owner = $OwnerName
7474 } - Force
75+ $mockDatabaseObject | Add-Member - MemberType ' ScriptMethod' - Name ' Refresh' - Value {
76+ # Mock implementation - in real SMO this updates properties from server
77+ } - Force
7578
7679 $mockServerObject = New-Object - TypeName ' Microsoft.SqlServer.Management.Smo.Server'
7780 $mockServerObject | Add-Member - MemberType ' NoteProperty' - Name ' InstanceName' - Value ' TestInstance' - Force
@@ -124,6 +127,9 @@ Describe 'Set-SqlDscDatabaseOwner' -Tag 'Public' {
124127 param ($OwnerName )
125128 $this.Owner = $OwnerName
126129 } - Force
130+ $mockDatabaseObject | Add-Member - MemberType ' ScriptMethod' - Name ' Refresh' - Value {
131+ # Mock implementation - in real SMO this updates properties from server
132+ } - Force
127133 }
128134
129135 It ' Should set database owner successfully' {
@@ -158,6 +164,9 @@ Describe 'Set-SqlDscDatabaseOwner' -Tag 'Public' {
158164 param ($OwnerName )
159165 $this.Owner = $OwnerName
160166 } - Force
167+ $mockDatabaseObject | Add-Member - MemberType ' ScriptMethod' - Name ' Refresh' - Value {
168+ # Mock implementation - in real SMO this updates properties from server
169+ } - Force
161170 }
162171
163172 It ' Should still call SetOwner even when owner is already set to desired value' {
@@ -182,6 +191,9 @@ Describe 'Set-SqlDscDatabaseOwner' -Tag 'Public' {
182191 param ($OwnerName )
183192 throw ' Simulated SetOwner() failure'
184193 } - Force
194+ $mockDatabaseObject | Add-Member - MemberType ' ScriptMethod' - Name ' Refresh' - Value {
195+ # Mock implementation - in real SMO this updates properties from server
196+ } - Force
185197 }
186198
187199 It ' Should throw error when SetOwner() fails' {
You can’t perform that action at this time.
0 commit comments