tests/functions/configuration/Get-PSFConfig.Tests.ps1
Describe "Get-PSFConfig Unit Tests" -Tag "CI", "Config", "Unit" { BeforeAll { Get-PSFConfig -Module PSFTests -Force | ForEach-Object { $null = [PSFramework.Configuration.ConfigurationHost]::Configurations.Remove($_.FullName) } } AfterAll { Get-PSFConfig -Module PSFTests -Force | ForEach-Object { $null = [PSFramework.Configuration.ConfigurationHost]::Configurations.Remove($_.FullName) } } # Catch any signature changes to force revisiting the command It "Should have the designed for parameters & sets" { (Get-Command Get-PSFConfig).ParameterSets.Name | Should -Be 'FullName', 'Module' (Get-Command Get-PSFConfig).Parameters.Keys | Should -Be 'FullName', 'Name', 'Module', 'Force', 'Verbose', 'Debug', 'ErrorAction', 'WarningAction', 'InformationAction', 'ErrorVariable', 'WarningVariable', 'InformationVariable', 'OutVariable', 'OutBuffer', 'PipelineVariable' } It "Should find the correct Configuration item" { $config = New-Object PSFramework.Configuration.Config $config.Module = "psftests" $config.Name = "get-psfconfig.test1" [PSFramework.Configuration.ConfigurationHost]::Configurations[$config.FullName] = $config (Get-PSFConfig -FullName 'PSFTests.Get-PSFConfig.Test1').GetHashCode() | Should -Be ($config.GetHashCode()) } } |