Tests/ConvertTo-DotEnv.Tests.ps1
|
BeforeAll { Set-StrictMode -Version "Latest" . "$PSScriptRoot\..\Source\ConvertTo-DotEnv.ps1" } Describe "ConvertTo-DotEnv" { It "Returns a KEY=VALUE line for every entry" { $text = ConvertTo-DotEnv -Values @{ KEY_ONE = "value one" } $text | Should -Be "KEY_ONE=value one" } It "Joins multiple entries with a newline" { $text = ConvertTo-DotEnv -Values @{ KEY_ONE = "value one"; KEY_TWO = "value two" } $lines = $text -split "`n" $lines | Should -Contain "KEY_ONE=value one" $lines | Should -Contain "KEY_TWO=value two" } It "Round-trips through ConvertFrom-DotEnv" { . "$PSScriptRoot\..\Source\ConvertFrom-DotEnv.ps1" $original = @{ KEY_ONE = "value one"; KEY_TWO = "value two" } $roundTripped = ConvertFrom-DotEnv -Text (ConvertTo-DotEnv -Values $original) $roundTripped["KEY_ONE"] | Should -Be "value one" $roundTripped["KEY_TWO"] | Should -Be "value two" } It "Accepts the values from the pipeline" { $text = @{ KEY_ONE = "value one" } | ConvertTo-DotEnv $text | Should -Be "KEY_ONE=value one" } } |