Tests/ConvertTo-BorderChars.Tests.ps1
|
BeforeAll { . $PSScriptRoot/../Private/Style/ConvertTo-BorderChars.ps1 } Describe 'ConvertTo-BorderChars' -Tag 'Unit', 'P2' { Context 'When given None' { It 'Should return all empty strings' { $result = ConvertTo-BorderChars -Style 'None' $result.TL | Should -Be '' $result.T | Should -Be '' $result.TR | Should -Be '' $result.L | Should -Be '' $result.R | Should -Be '' $result.BL | Should -Be '' $result.B | Should -Be '' $result.BR | Should -Be '' } } Context 'When given Normal' { It 'Should return correct box-drawing chars' { $result = ConvertTo-BorderChars -Style 'Normal' $result.TL | Should -Be '┌' $result.T | Should -Be '─' $result.TR | Should -Be '┐' $result.L | Should -Be '│' $result.R | Should -Be '│' $result.BL | Should -Be '└' $result.B | Should -Be '─' $result.BR | Should -Be '┘' } } Context 'When given Rounded' { It 'Should return correct corner chars' { $result = ConvertTo-BorderChars -Style 'Rounded' $result.TL | Should -Be '╭' $result.TR | Should -Be '╮' $result.BL | Should -Be '╰' $result.BR | Should -Be '╯' } It 'Should use normal horizontal/vertical chars' { $result = ConvertTo-BorderChars -Style 'Rounded' $result.T | Should -Be '─' $result.L | Should -Be '│' } } Context 'When given Thick' { It 'Should return correct box-drawing chars' { $result = ConvertTo-BorderChars -Style 'Thick' $result.TL | Should -Be '┏' $result.T | Should -Be '━' $result.TR | Should -Be '┓' $result.L | Should -Be '┃' $result.R | Should -Be '┃' $result.BL | Should -Be '┗' $result.B | Should -Be '━' $result.BR | Should -Be '┛' } } Context 'When given Double' { It 'Should return correct box-drawing chars' { $result = ConvertTo-BorderChars -Style 'Double' $result.TL | Should -Be '╔' $result.T | Should -Be '═' $result.TR | Should -Be '╗' $result.L | Should -Be '║' $result.R | Should -Be '║' $result.BL | Should -Be '╚' $result.B | Should -Be '═' $result.BR | Should -Be '╝' } } Context 'When given an unknown style' { It 'Should return None chars (all empty strings)' { $result = ConvertTo-BorderChars -Style 'Unknown' -ErrorAction SilentlyContinue $result.TL | Should -Be '' } It 'Should emit a non-terminating error' { { ConvertTo-BorderChars -Style 'Unknown' -ErrorAction Stop } | Should -Throw } } } |