diff --git a/test/powershell/ConvertTo-Xml.Tests.ps1 b/test/powershell/ConvertTo-Xml.Tests.ps1 new file mode 100644 index 000000000..b090e090d --- /dev/null +++ b/test/powershell/ConvertTo-Xml.Tests.ps1 @@ -0,0 +1,53 @@ +Describe "ConvertTo-Xml DRT Unit Tests" -Tags DRT{ + $customPSObject = [pscustomobject]@{ "prop1" = "val1"; "prop2" = "val2" } + $newLine = [System.Environment]::NewLine + It "Test convertto-xml with a depth parameter" { + $returnObject = $customPSObject | ConvertTo-Xml -Depth 1 + $returnObject -is [System.Xml.XmlDocument] | Should Be $true + #$xml = [System.Xml.XmlDocument]$returnObject + $expectedValue = '' + 'val1val2' + $returnObject.OuterXml | Should Be $expectedValue + } + + It "Test convertto-xml with notypeinfo parameter" { + $returnObject = $customPSObject | ConvertTo-Xml -NoTypeInformation + $returnObject -is [System.Xml.XmlDocument] | Should Be $true + $expectedValue = '' + 'val1val2' + $returnObject.OuterXml | Should Be $expectedValue + } + + It "Test convertto-xml as String" { + $returnObject = $customPSObject | ConvertTo-Xml -As String + $expectedValue = @" +$newLine$newLine $newLine val1$newLine val2$newLine $newLine +"@ + $returnObject -is [System.String] | Should Be $true + $returnObject | Should Be $expectedValue + #$returnObject.Trim($newLine) | Should Be $expectedValue.Trim($newLine) + } + + It "Test convertto-xml as Stream" { + $returnObject = $customPSObject | ConvertTo-Xml -As Stream + $returnObject -is [System.Array] | Should Be $true + $stream1 = '' + $stream2 = '' + $stream3 = @" +$newLine val1$newLine val2$newLine +"@ + $stream4 = '' + + $returnObject.Count | Should Be 4 + $returnObject[0] | Should Be $stream1 + $returnObject[1] | Should Be $stream2 + $returnObject[2] | Should Be $stream3 + $returnObject[3] | Should Be $stream4 + } + + It "Test convertto-xml as Document" { + $returnObject = $customPSObject | ConvertTo-Xml -As Document -NoTypeInformation + $returnObject -is [System.Xml.XmlDocument] | Should Be $true + $expectedValue = 'val1val2' + $returnObject.OuterXml | Should Be $expectedValue + } +} +