Functions/Test-DomainValidity.Tests.ps1

describe "BitTitan.Runbooks.Common/Test-DomainValidity" -Tag "module", "unit" {

    # Import the function to test
    . "$($PSScriptRoot)\Test-DomainValidity.ps1"

    it -TestCases @(
        @{ domain = "valid.domain.com" },
        @{ domain = "valid.domain.com.eu" },
        @{ domain = "valid.domain.school.edu.us" }
    ) "returns true for the valid domain '<domain>'" {
        param ($domain)
        Test-DomainValidity $domain | Should Be $true
    }

    it -TestCases @(
        @{ domain = "invalid.domain." },
        @{ domain = "invalid.domain.c" }
    ) "returns false for the invalid domain '<domain>'" {
        param ($domain)
        Test-DomainValidity $domain | Should Be $false
    }
}