functions/IsPackageInteresting.Tests.ps1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$here = Split-Path -Parent $MyInvocation.MyCommand.Path
$sut = (Split-Path -Leaf $MyInvocation.MyCommand.Path) -replace '\.Tests\.', '.'
. "$here\$sut"

Describe 'IsPackageInteresting Tests' -Tag Unit {

    It 'should return false when no patterns are specified' {
        $res = IsPackageInteresting -PackageName 'MyPackage' -PackageWildcardExpressions @()
        $res | Should -BeOfType [boolean]
        $res | Should -Be $false
    }

    It 'should match when passed a single pattern' {
        $res = IsPackageInteresting -PackageName 'MyPackage.Something' -PackageWildcardExpressions 'MyPackage.*'
        $res | Should -BeOfType [boolean]
        $res | Should -Be $true
    }

    It 'should match when passed multiple patterns' {
        $res = IsPackageInteresting -PackageName 'MyPackage.Something' -PackageWildcardExpressions @('Acme*','MyPackage.*')
        $res | Should -BeOfType [boolean]
        $res | Should -Be $true
    }
}