Tests/GenXdev.Coding.PowerShell.Modules/_AssertGenXdevUnitTests.Tests.ps1

###############################################################################################################################################################
###############################################################################Pester\Describe "_AssertGenXdevUnitTests" {

############################################################################### Pester\It "Should pass PSScriptAnalyzer rules" {

################################################################################ get the script path for analysis
############################################################################### $scriptPath = GenXdev.FileSystem\Expand-Path "$PSScriptRoot\..\..\Functions\GenXdev.Coding.PowerShell.Modules\_AssertGenXdevUnitTests.ps1"

################################################################################ run analyzer with explicit settings
############################################################################### $analyzerResults = GenXdev.Coding\Invoke-GenXdevScriptAnalyzer `
############################################################################### -Path $scriptPath

############################################################################### [string] $message = ""
############################################################################### $analyzerResults | Microsoft.PowerShell.Core\ForEach-Object {

############################################################################### $message = $message + @"
###############################################################################--------------------------------------------------
###############################################################################Rule: $($_.RuleName)`
###############################################################################Description: $($_.Description)
###############################################################################Message: $($_.Message)
###############################################################################`r`n
###############################################################################"@
############################################################################### }

############################################################################### $analyzerResults.Count | Pester\Should -Be 0 -Because @"
###############################################################################The following PSScriptAnalyzer rules are being violated:
###############################################################################$message
###############################################################################"@;
############################################################################### }
###############################################################################}
###############################################################################################################################################################