Private/Test-NonEmptyString.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
function Test-NonEmptyString {
    [CmdletBinding()]
    param(
        [Parameter(Position=0)]
        [string]$Value,
        [switch]$ThrowOnFail
    )

    if ([String]::IsNullOrWhiteSpace($Value)) {
        if ($ThrowOnFail) {
            throw [Management.Automation.ValidationMetadataException] "Value must not be null, empty, or only whitespace."
        }
        return $false
    }

    return $true
}