Tests/Unit/Plugins.Tests.ps1
|
Describe "ArgosCCF: Motor de Plugins (Professional API)" { BeforeAll { Import-Module "C:\test\ArgosCCF\ArgosCCF.psd1" -Force } Context "Firma y Seguridad" { It "Debe confirmar firma (Confirm-CCFPluginSignature)" { $plugins = Get-CCFPlugins if ($plugins.Count -gt 0) { $res = Confirm-CCFPluginSignature -Path $plugins[0].Path $res.Valid | Should -BeOfType [bool] } } } Context "Sandboxing" { It "Debe forzar el modo de lenguaje restringido" { $tmp = Join-Path $env:TEMP "SandboxTest.ps1" 'param($Arguments) return $ExecutionContext.SessionState.LanguageMode' | Set-Content $tmp $p = [PSCustomObject]@{ Name = "SandboxTest"; Path = $tmp } $res = Invoke-CCFPlugin -Plugin $p -HardenedMode $res | Should -Be "ConstrainedLanguage" if (Test-Path $tmp) { Remove-Item $tmp } } } Context "Retrocompatibilidad (Alias)" { It "El alias Test-CCFPluginSignature debe apuntar a Confirm-CCFPluginSignature" { (Get-Alias Test-CCFPluginSignature).Definition | Should -Be "Confirm-CCFPluginSignature" } } } |