Tests/ConvertFrom-DotEnv.Tests.ps1
|
BeforeAll { Set-StrictMode -Version "Latest" . "$PSScriptRoot\..\Source\ConvertFrom-DotEnv.ps1" } Describe "ConvertFrom-DotEnv" { It "Returns every key=value pair" { $text = @( "KEY_ONE=value one" "KEY_TWO = value two " ) -join "`n" $values = ConvertFrom-DotEnv -Text $text $values["KEY_ONE"] | Should -Be "value one" $values["KEY_TWO"] | Should -Be "value two" } It "Ignores comment and blank lines" { $text = @( "# comment line" "" "KEY_ONE=value one" ) -join "`n" $values = ConvertFrom-DotEnv -Text $text $values.Keys | Should -HaveCount 1 $values["KEY_ONE"] | Should -Be "value one" } It "Throws when a non-comment, non-blank line is not in KEY=VALUE format" { { ConvertFrom-DotEnv -Text "not a key value line" } | Should -Throw } It "Accepts the text from the pipeline" { $values = "KEY_ONE=value one" | ConvertFrom-DotEnv $values["KEY_ONE"] | Should -Be "value one" } } |