tests/Set-SkylineExperience.Tests.ps1

Describe "Set-SkylineExperience" {
    BeforeAll {
        #Define feature ids
        $WebFeatureId = "52E14B6F-B1BB-4969-B89B-C4FAA56745EF"
        $SiteFeatureId = "E3540C7D-6BEA-403C-A224-1A12EAFEE4C4"

        #Clear any prior experience settings
        Disable-PnPFeature -Identity $WebFeatureId -Scope Web -Force
        Disable-PnPFeature -Identity $SiteFeatureId -Scope Site -Force
    }
    Context "sets experience on web" {
        It "should set classic experience on web" {
            Set-SkylineExperience -Mode Classic -Scope Web
            Get-PnPFeature -Scope Web | Where-Object {$_.DefinitionId -eq $WebFeatureId} | Should Not BeNullOrEmpty 
        }
        It "should set modern experience on web" {
            Set-SkylineExperience -Mode Modern -Scope Web
            Get-PnPFeature -Scope Web | Where-Object {$_.DefinitionId -eq $WebFeatureId} | Should BeNullOrEmpty 
        }
    }
    Context "sets experience on site" {
        It "should set classic experience on site" {
            Set-SkylineExperience -Mode Classic -Scope Site
            Get-PnPFeature -Scope Site | Where-Object {$_.DefinitionId -eq $SiteFeatureId} | Should Not BeNullOrEmpty 
        }
        It "should set modern experience on site" {
            Set-SkylineExperience -Mode Modern -Scope Site
            Get-PnPFeature -Scope Site | Where-Object {$_.DefinitionId -eq $SiteFeatureId} | Should BeNullOrEmpty 
        }
    }
    AfterAll {

    }
}