diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f57e1e95..53188fef 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -7,5 +7,8 @@ version: 2 updates: - package-ecosystem: github-actions # See documentation for possible values directory: / # Location of package manifests + labels: + - dependencies + - github-actions schedule: interval: weekly diff --git a/.github/workflows/Action-Test-Src-Default.yml b/.github/workflows/Action-Test-Src-Default.yml index 5d3301b2..4e816bcf 100644 --- a/.github/workflows/Action-Test-Src-Default.yml +++ b/.github/workflows/Action-Test-Src-Default.yml @@ -24,7 +24,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Action-Test uses: ./ diff --git a/.github/workflows/Action-Test-Src-WithManifest.yml b/.github/workflows/Action-Test-Src-WithManifest.yml index 53dc398a..f235aec3 100644 --- a/.github/workflows/Action-Test-Src-WithManifest.yml +++ b/.github/workflows/Action-Test-Src-WithManifest.yml @@ -24,7 +24,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Action-Test uses: ./ diff --git a/.github/workflows/Action-Test-outputs.yml b/.github/workflows/Action-Test-outputs.yml index b47e5116..7ce8b431 100644 --- a/.github/workflows/Action-Test-outputs.yml +++ b/.github/workflows/Action-Test-outputs.yml @@ -24,7 +24,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Action-Test uses: ./ diff --git a/.github/workflows/Auto-Release.yml b/.github/workflows/Auto-Release.yml index 680da5c0..976b40c7 100644 --- a/.github/workflows/Auto-Release.yml +++ b/.github/workflows/Auto-Release.yml @@ -26,7 +26,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Auto-Release uses: PSModule/Auto-Release@v1 diff --git a/.github/workflows/Linter.yml b/.github/workflows/Linter.yml index 1f677cbd..19626293 100644 --- a/.github/workflows/Linter.yml +++ b/.github/workflows/Linter.yml @@ -19,7 +19,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 diff --git a/README.md b/README.md index 8a9f1ba5..fd73ab06 100644 --- a/README.md +++ b/README.md @@ -1,187 +1,3 @@ # Test-PSModule -Tests PowerShell module repos using PSModule framework rules. - -This GitHub Action is a part of the [PSModule framework](https://github.com/PSModule). It is recommended to use the -[Process-PSModule workflow](https://github.com/PSModule/Process-PSModule) to automate the whole process of managing the PowerShell module. - -## Specifications and practices - -Test-PSModule enables: - -- [Test-Driven Development](https://testdriven.io/test-driven-development/) using [Pester](https://pester.dev) via [Invoke-Pester](https://github.com/PSModule/Invoke-Pester). - -## How it works - -- The action runs test on the module repository based on `Settings`: - - `SourceCode` - Tests source code style and standards based on PSModule framework rules. - - `Module` - Tests the module build module style and standards based on PSModule framework rules. - - The module is imported in its own context to avoid conflicts with other modules. -- The action returns the test results as action [outputs](#outputs). -- The following reports are calculated and uploaded as artifacts. This is done to support the action being run in matrix jobs. - - Test suite results. In [Process-PSModule](https://github.com/PSModule/Process-PSModule) this is evaluated in a later job by [Get-PesterTestResults](https://github.com/PSModule/Get-PesterTestResults) - - Code coverage results. In [Process-PSModule](https://github.com/PSModule/Process-PSModule) this is evaluated in a later job by [Get-PesterCodeCoverage](https://github.com/PSModule/Get-PesterCodeCoverage) - -The action fails if any of the tests fail or it fails to run the tests. -This is mitigated by the `continue-on-error` option in the workflow. - -## How to use it - -It is recommended to use the [Process-PSModule workflow](https://github.com/PSModule/Process-PSModule) to automate the whole process of managing the PowerShell module. - -To use the action, create a new file in the `.github/workflows` directory of the module repository and add the following content. -
-Workflow suggestion - before module is built - -```yaml -name: Test-PSModule - -on: [push] - -jobs: - Test-PSModule: - name: Test-PSModule - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Initialize environment - uses: PSModule/Initialize-PSModule@main - - - name: Test-PSModule - uses: PSModule/Test-PSModule@main - with: - Settings: SourceCode - -``` -
- -
-Workflow suggestion - after module is built - -```yaml -name: Test-PSModule - -on: [push] - -jobs: - Test-PSModule: - name: Test-PSModule - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Initialize environment - uses: PSModule/Initialize-PSModule@main - - - name: Test-PSModule - uses: PSModule/Test-PSModule@main - with: - Settings: Module - -``` -
- -## Usage - -### Inputs - -| Name | Description | Required | Default | -| ---- | ----------- | -------- | ------- | -| `Name` | The name of the module to test. The name of the repository is used if not specified. | `false` | | -| `Settings` | The type of tests to run. Can be either `Module` or `SourceCode`. | `true` | | -| `Debug` | Enable debug output. | `false` | `'false'` | -| `Verbose` | Enable verbose output. | `false` | `'false'` | -| `Version` | Specifies the version of the GitHub module to be installed. The value must be an exact version. | `false` | | -| `Prerelease` | Allow prerelease versions if available. | `false` | `'false'` | -| `WorkingDirectory` | The working directory to use for the action. This is the root folder where tests and outputs are expected. | `false` | `'.'` | -| `StepSummary_Mode` | Controls which tests to show in the GitHub step summary. Allows "Full" (all tests), "Failed" (only failed tests), or "None" (disable step summary). | `false` | `Failed` | -| `StepSummary_ShowTestOverview` | Controls whether to show the test overview table in the GitHub step summary. | `false` | `false` | -| `StepSummary_ShowConfiguration` | Controls whether to show the configuration details in the GitHub step summary. | `false` | `false` | -| `Run_ExcludePath` | Directories/files to exclude from the run. | `false` | | -| `Run_ScriptBlock` | ScriptBlocks containing tests to be executed. | `false` | | -| `Run_Container` | ContainerInfo objects containing tests to be executed. | `false` | | -| `Run_TestExtension` | Filter used to identify test files (e.g. `.Tests.ps1`). | `false` | | -| `Run_Exit` | Whether to exit with a non-zero exit code on failure. | `false` | | -| `Run_Throw` | Whether to throw an exception on test failure. | `false` | | -| `Run_SkipRun` | Discovery only, skip actual test run. | `false` | | -| `Run_SkipRemainingOnFailure` | Skips remaining tests after the first failure. Options: `None`, `Run`, `Container`, `Block`. | `false` | | -| `Filter_Tag` | Tags of Describe/Context/It blocks to run. | `false` | | -| `Filter_ExcludeTag` | Tags of Describe/Context/It blocks to exclude. | `false` | | -| `Filter_Line` | Filter by file + scriptblock start line (e.g. `C:\tests\file1.Tests.ps1:37`). | `false` | | -| `Filter_ExcludeLine` | Exclude by file + scriptblock start line. Precedence over `Filter_Line`. | `false` | | -| `Filter_FullName` | Full name of a test with wildcards, joined by dot. E.g. `*.describe Get-Item.test1` | `false` | | -| `CodeCoverage_Enabled` | Enable code coverage. | `false` | | -| `CodeCoverage_OutputFormat` | Format for the coverage report. Possible values: `JaCoCo`, `CoverageGutters`, `Cobertura`. | `false` | | -| `CodeCoverage_OutputPath` | Where to save the code coverage report (relative to the current dir). | `false` | | -| `CodeCoverage_OutputEncoding` | Encoding of the coverage file. | `false` | | -| `CodeCoverage_Path` | Files/directories to measure coverage on (by default, reuses `Path` from the general settings). | `false` | | -| `CodeCoverage_ExcludeTests` | Exclude tests themselves from coverage. | `false` | | -| `CodeCoverage_RecursePaths` | Recurse through coverage directories. | `false` | | -| `CodeCoverage_CoveragePercentTarget` | Desired minimum coverage percentage. | `false` | | -| `CodeCoverage_UseBreakpoints` | **Experimental**: When `false`, use a Profiler-based tracer instead of breakpoints. | `false` | | -| `CodeCoverage_SingleHitBreakpoints` | Remove breakpoints after first hit. | `false` | | -| `TestResult_Enabled` | Enable test-result output (e.g. NUnitXml, JUnitXml). | `false` | | -| `TestResult_OutputFormat` | Possible values: `NUnitXml`, `NUnit2.5`, `NUnit3`, `JUnitXml`. | `false` | | -| `TestResult_OutputPath` | Where to save the test-result report (relative path). | `false` | | -| `TestResult_OutputEncoding` | Encoding of the test-result file. | `false` | | -| `Should_ErrorAction` | Controls if `Should` throws on error. Use `Stop` to throw, or `Continue` to fail at the end. | `false` | | -| `Debug_ShowFullErrors` | Show Pester internal stack on errors. (Deprecated – overrides `Output.StackTraceVerbosity` to `Full`). | `false` | | -| `Debug_WriteDebugMessages` | Write debug messages to screen. | `false` | | -| `Debug_WriteDebugMessagesFrom` | Filter debug messages by source. Wildcards allowed. | `false` | | -| `Debug_ShowNavigationMarkers` | Write paths after every block/test for easy navigation in Visual Studio Code. | `false` | | -| `Debug_ReturnRawResultObject` | Returns an unfiltered result object, for development only. | `false` | | -| `Output_Verbosity` | Verbosity: `None`, `Normal`, `Detailed`, `Diagnostic`. | `false` | | -| `Output_StackTraceVerbosity` | Stacktrace detail: `None`, `FirstLine`, `Filtered`, `Full`. | `false` | | -| `Output_CIFormat` | CI format of error output: `None`, `Auto`, `AzureDevops`, `GithubActions`. | `false` | | -| `Output_CILogLevel` | CI log level: `Error` or `Warning`. | `false` | | -| `Output_RenderMode` | How to render console output: `Auto`, `Ansi`, `ConsoleColor`, `Plaintext`. | `false` | | -| `TestDrive_Enabled` | Enable `TestDrive`. | `false` | | -| `TestRegistry_Enabled` | Enable `TestRegistry`. | `false` | | - -### Outputs - -| Output | Description | -|-------------------------|--------------------------------------| -| `Outcome` | Outcome of the test run. | -| `Conclusion` | Conclusion status of test execution. | -| `Executed` | Indicates if tests were executed. | -| `Result` | Overall result (`Passed`, `Failed`). | -| `FailedCount` | Number of failed tests. | -| `FailedBlocksCount` | Number of failed blocks. | -| `FailedContainersCount` | Number of failed containers. | -| `PassedCount` | Number of passed tests. | -| `SkippedCount` | Number of skipped tests. | -| `InconclusiveCount` | Number of inconclusive tests. | -| `NotRunCount` | Number of tests not run. | -| `TotalCount` | Total tests executed. | - -## PSModule tests - -### SourceCode tests - -The [PSModule - SourceCode tests](./scripts/tests/SourceCode/PSModule/PSModule.Tests.ps1) verifies the following coding practices that the framework enforces: - -| ID | Category | Description | -|---------------------|---------------------|--------------------------------------------------------------------------------------------| -| NumberOfProcessors | General | Should use `[System.Environment]::ProcessorCount` instead of `$env:NUMBER_OF_PROCESSORS`. | -| Verbose | General | Should not contain `-Verbose` unless it is explicitly disabled with `:$false`. | -| OutNull | General | Should use `$null = ...` instead of piping output to `Out-Null`. | -| NoTernary | General | Should not use ternary operations to maintain compatibility with PowerShell 5.1 and below. | -| LowercaseKeywords | General | All PowerShell keywords should be written in lowercase. | -| FunctionCount | Functions (Generic) | Each script file should contain exactly one function or filter. | -| FunctionName | Functions (Generic) | Script filenames should match the name of the function or filter they contain. | -| CmdletBinding | Functions (Generic) | Functions should include the `[CmdletBinding()]` attribute. | -| ParamBlock | Functions (Generic) | Functions should have a parameter block (`param()`). | -| FunctionTest | Functions (Public) | All public functions/filters should have corresponding tests. | - -### Module tests - -The [PSModule - Module tests](./scripts/tests/Module/PSModule/PSModule.Tests.ps1) verifies the following coding practices that the framework enforces: - -| Name | Description | -| ------ | ----------- | -| Module Manifest exists | Verifies that a module manifest file is present. | -| Module Manifest is valid | Verifies that the module manifest file is valid. | +This GitHub Action is a part of the [PSModule framework](https://github.com/PSModule). diff --git a/action.yml b/action.yml index 74936e66..f497d1ac 100644 --- a/action.yml +++ b/action.yml @@ -1,9 +1,6 @@ -name: Test-PSModule (by PSModule) +name: Test-PSModule description: Test a PowerShell module before publishing the module to the PowerShell Gallery. author: PSModule -branding: - icon: check-square - color: gray-dark inputs: Name: @@ -291,9 +288,9 @@ runs: WorkingDirectory: ${{ inputs.WorkingDirectory }} with: Debug: ${{ inputs.Debug }} - Prerelease: ${{ inputs.Prerelease }} Verbose: ${{ inputs.Verbose }} Version: ${{ inputs.Version }} + Prerelease: ${{ inputs.Prerelease }} WorkingDirectory: ${{ inputs.WorkingDirectory }} Path: ${{ steps.paths.outputs.TestPath }} StepSummary_Mode: ${{ inputs.StepSummary_Mode }} diff --git a/scripts/tests/Module/Module.Configuration.ps1 b/scripts/tests/Module/Module.Configuration.ps1 index e76f767f..de7fdea7 100644 --- a/scripts/tests/Module/Module.Configuration.ps1 +++ b/scripts/tests/Module/Module.Configuration.ps1 @@ -1,8 +1,11 @@ @{ - TestResult = @{ + TestResult = @{ Enabled = $true } - Output = @{ + CodeCoverage = @{ + Enabled = $true + } + Output = @{ Verbosity = 'Detailed' } } diff --git a/scripts/tests/Module/PSModule/PSModule.Container.ps1 b/scripts/tests/Module/PSModule/PSModule.Container.ps1 index 31d42d3c..05395f66 100644 --- a/scripts/tests/Module/PSModule/PSModule.Container.ps1 +++ b/scripts/tests/Module/PSModule/PSModule.Container.ps1 @@ -1,8 +1,6 @@ @{ Path = Get-ChildItem -Path $PSScriptRoot -Filter *.Tests.ps1 | Select-Object -ExpandProperty FullName Data = @{ - Path = $env:PSMODULE_INVOKE_PESTER_INPUT_Run_Path - Debug = $false - Verbose = $false + Path = $env:PSMODULE_INVOKE_PESTER_INPUT_Run_Path } } diff --git a/scripts/tests/Module/PSModule/PSModule.Tests.ps1 b/scripts/tests/Module/PSModule/PSModule.Tests.ps1 index 1253ce7f..8bf00f5e 100644 --- a/scripts/tests/Module/PSModule/PSModule.Tests.ps1 +++ b/scripts/tests/Module/PSModule/PSModule.Tests.ps1 @@ -2,8 +2,12 @@ 'PSReviewUnusedParameter', 'Path', Justification = 'Path is used to specify the path to the module to test.' )] +[Diagnostics.CodeAnalysis.SuppressMessageAttribute( + 'PSAvoidUsingWriteHost', '', + Justification = 'Log outputs to GitHub Actions logs.' +)] [CmdLetBinding()] -Param( +param( [Parameter(Mandatory)] [string] $Path ) @@ -25,12 +29,12 @@ Describe 'PSModule - Module tests' { It 'Module Manifest exists' { $result = Test-Path -Path $moduleManifestPath $result | Should -Be $true - Write-Verbose $result + Write-Host "$($result | Format-List | Out-String)" } It 'Module Manifest is valid' { $result = Test-ModuleManifest -Path $moduleManifestPath $result | Should -Not -Be $null - Write-Verbose $result + Write-Host "$($result | Format-List | Out-String)" } # It 'has a valid license URL' {} # It 'has a valid project URL' {} diff --git a/scripts/tests/SourceCode/PSModule/PSModule.Container.ps1 b/scripts/tests/SourceCode/PSModule/PSModule.Container.ps1 index 1f425cff..dbfef337 100644 --- a/scripts/tests/SourceCode/PSModule/PSModule.Container.ps1 +++ b/scripts/tests/SourceCode/PSModule/PSModule.Container.ps1 @@ -3,7 +3,5 @@ Data = @{ Path = $env:PSMODULE_INVOKE_PESTER_INPUT_Run_Path TestsPath = $env:LocalTestPath - Debug = $false - Verbose = $false } } diff --git a/scripts/tests/SourceCode/PSModule/PSModule.Tests.ps1 b/scripts/tests/SourceCode/PSModule/PSModule.Tests.ps1 index 001ca7f7..ef2efcf3 100644 --- a/scripts/tests/SourceCode/PSModule/PSModule.Tests.ps1 +++ b/scripts/tests/SourceCode/PSModule/PSModule.Tests.ps1 @@ -14,8 +14,12 @@ 'PSAvoidUsingWriteHost', '', Justification = 'Logging to Github Actions.' )] +[Diagnostics.CodeAnalysis.SuppressMessageAttribute( + 'PSAvoidLongLines', '', + Justification = 'Consistent formatting of ternary operator usage' +)] [CmdLetBinding()] -Param( +param( # The path to the 'src' folder of the repo. [Parameter(Mandatory)] [string] $Path, @@ -40,8 +44,7 @@ BeforeAll { } Write-Host '::endgroup::' $privateFunctionsPath = Join-Path -Path $functionsPath -ChildPath 'private' - $privateFunctionFiles = (Test-Path -Path $privateFunctionsPath) ? - (Get-ChildItem -Path $privateFunctionsPath -File -Filter '*.ps1' -Recurse) : $null + $privateFunctionFiles = (Test-Path -Path $privateFunctionsPath) ? (Get-ChildItem -Path $privateFunctionsPath -File -Filter '*.ps1' -Recurse) : $null Write-Host "::group:: - Private [$($privateFunctionFiles.Count)]" $privateFunctionFiles | ForEach-Object { Write-Host " - $($_.FullName)" @@ -62,16 +65,14 @@ BeforeAll { } Write-Host '::endgroup::' $privateVariablesPath = Join-Path -Path $variablesPath -ChildPath 'private' - $privateVariableFiles = (Test-Path -Path $privateVariablesPath) ? - (Get-ChildItem -Path $privateVariablesPath -File -Filter '*.ps1' -Recurse) : $null + $privateVariableFiles = (Test-Path -Path $privateVariablesPath) ? (Get-ChildItem -Path $privateVariablesPath -File -Filter '*.ps1' -Recurse) : $null Write-Host "::group:: - Private [$($privateVariableFiles.Count)]" $privateVariableFiles | ForEach-Object { Write-Host " - $($_.FullName)" } Write-Host '::endgroup::' $publicVariablesPath = Join-Path -Path $variablesPath -ChildPath 'public' - $publicVariableFiles = (Test-Path -Path $publicVariablesPath) ? - (Get-ChildItem -Path $publicVariablesPath -File -Filter '*.ps1' -Recurse) : $null + $publicVariableFiles = (Test-Path -Path $publicVariablesPath) ? (Get-ChildItem -Path $publicVariablesPath -File -Filter '*.ps1' -Recurse) : $null Write-Host "::group:: - Public [$($publicVariableFiles.Count)]" $publicVariableFiles | ForEach-Object { Write-Host " - $($_.FullName)" @@ -85,16 +86,14 @@ BeforeAll { } Write-Host '::endgroup::' $privateClassPath = Join-Path -Path $classPath -ChildPath 'private' - $privateClassFiles = (Test-Path -Path $privateClassPath) ? - (Get-ChildItem -Path $privateClassPath -File -Filter '*.ps1' -Recurse) : $null + $privateClassFiles = (Test-Path -Path $privateClassPath) ? (Get-ChildItem -Path $privateClassPath -File -Filter '*.ps1' -Recurse) : $null Write-Host "::group:: - Private [$($privateClassFiles.Count)]" $privateClassFiles | ForEach-Object { Write-Host " - $($_.FullName)" } Write-Host '::endgroup::' $publicClassPath = Join-Path -Path $classPath -ChildPath 'public' - $publicClassFiles = (Test-Path -Path $publicClassPath) ? - (Get-ChildItem -Path $publicClassPath -File -Filter '*.ps1' -Recurse) : $null + $publicClassFiles = (Test-Path -Path $publicClassPath) ? (Get-ChildItem -Path $publicClassPath -File -Filter '*.ps1' -Recurse) : $null Write-Host "::group:: - Public [$($publicClassFiles.Count)]" $publicClassFiles | ForEach-Object { Write-Host " - $($_.FullName)" diff --git a/tests/outputTestRepo/outputs/module/PSModuleTest/PSModuleTest.psm1 b/tests/outputTestRepo/outputs/module/PSModuleTest/PSModuleTest.psm1 index 3553dd95..63117b65 100644 --- a/tests/outputTestRepo/outputs/module/PSModuleTest/PSModuleTest.psm1 +++ b/tests/outputTestRepo/outputs/module/PSModuleTest/PSModuleTest.psm1 @@ -3,42 +3,42 @@ param() $scriptName = $MyInvocation.MyCommand.Name -Write-Verbose "[$scriptName] Importing module" +Write-Debug "[$scriptName] Importing module" #region - Data import -Write-Verbose "[$scriptName] - [data] - Processing folder" +Write-Debug "[$scriptName] - [data] - Processing folder" $dataFolder = (Join-Path $PSScriptRoot 'data') -Write-Verbose "[$scriptName] - [data] - [$dataFolder]" +Write-Debug "[$scriptName] - [data] - [$dataFolder]" Get-ChildItem -Path "$dataFolder" -Recurse -Force -Include '*.psd1' -ErrorAction SilentlyContinue | ForEach-Object { - Write-Verbose "[$scriptName] - [data] - [$($_.Name)] - Importing" + Write-Debug "[$scriptName] - [data] - [$($_.Name)] - Importing" New-Variable -Name $_.BaseName -Value (Import-PowerShellDataFile -Path $_.FullName) -Force - Write-Verbose "[$scriptName] - [data] - [$($_.Name)] - Done" + Write-Debug "[$scriptName] - [data] - [$($_.Name)] - Done" } -Write-Verbose "[$scriptName] - [data] - Done" +Write-Debug "[$scriptName] - [data] - Done" #endregion - Data import #region - From /init -Write-Verbose "[$scriptName] - [/init] - Processing folder" +Write-Debug "[$scriptName] - [/init] - Processing folder" #region - From /init/initializer.ps1 -Write-Verbose "[$scriptName] - [/init/initializer.ps1] - Importing" +Write-Debug "[$scriptName] - [/init/initializer.ps1] - Importing" Write-Verbose '-------------------------------' Write-Verbose '--- THIS IS AN INITIALIZER ---' Write-Verbose '-------------------------------' -Write-Verbose "[$scriptName] - [/init/initializer.ps1] - Done" +Write-Debug "[$scriptName] - [/init/initializer.ps1] - Done" #endregion - From /init/initializer.ps1 -Write-Verbose "[$scriptName] - [/init] - Done" +Write-Debug "[$scriptName] - [/init] - Done" #endregion - From /init #region - From /classes -Write-Verbose "[$scriptName] - [/classes] - Processing folder" +Write-Debug "[$scriptName] - [/classes] - Processing folder" #region - From /classes/Book.ps1 -Write-Verbose "[$scriptName] - [/classes/Book.ps1] - Importing" +Write-Debug "[$scriptName] - [/classes/Book.ps1] - Importing" class Book { # Class properties @@ -86,10 +86,10 @@ class Book { } } -Write-Verbose "[$scriptName] - [/classes/Book.ps1] - Done" +Write-Debug "[$scriptName] - [/classes/Book.ps1] - Done" #endregion - From /classes/Book.ps1 #region - From /classes/BookList.ps1 -Write-Verbose "[$scriptName] - [/classes/BookList.ps1] - Importing" +Write-Debug "[$scriptName] - [/classes/BookList.ps1] - Importing" class BookList { # Static property to hold the list of books @@ -178,17 +178,17 @@ class BookList { } } -Write-Verbose "[$scriptName] - [/classes/BookList.ps1] - Done" +Write-Debug "[$scriptName] - [/classes/BookList.ps1] - Done" #endregion - From /classes/BookList.ps1 -Write-Verbose "[$scriptName] - [/classes] - Done" +Write-Debug "[$scriptName] - [/classes] - Done" #endregion - From /classes #region - From /private -Write-Verbose "[$scriptName] - [/private] - Processing folder" +Write-Debug "[$scriptName] - [/private] - Processing folder" #region - From /private/Get-InternalPSModule.ps1 -Write-Verbose "[$scriptName] - [/private/Get-InternalPSModule.ps1] - Importing" +Write-Debug "[$scriptName] - [/private/Get-InternalPSModule.ps1] - Importing" Function Get-InternalPSModule { <# @@ -209,10 +209,10 @@ Function Get-InternalPSModule { Write-Output "Hello, $Name!" } -Write-Verbose "[$scriptName] - [/private/Get-InternalPSModule.ps1] - Done" +Write-Debug "[$scriptName] - [/private/Get-InternalPSModule.ps1] - Done" #endregion - From /private/Get-InternalPSModule.ps1 #region - From /private/Set-InternalPSModule.ps1 -Write-Verbose "[$scriptName] - [/private/Set-InternalPSModule.ps1] - Importing" +Write-Debug "[$scriptName] - [/private/Set-InternalPSModule.ps1] - Importing" Function Set-InternalPSModule { <# @@ -237,17 +237,17 @@ Function Set-InternalPSModule { Write-Output "Hello, $Name!" } -Write-Verbose "[$scriptName] - [/private/Set-InternalPSModule.ps1] - Done" +Write-Debug "[$scriptName] - [/private/Set-InternalPSModule.ps1] - Done" #endregion - From /private/Set-InternalPSModule.ps1 -Write-Verbose "[$scriptName] - [/private] - Done" +Write-Debug "[$scriptName] - [/private] - Done" #endregion - From /private #region - From /public -Write-Verbose "[$scriptName] - [/public] - Processing folder" +Write-Debug "[$scriptName] - [/public] - Processing folder" #region - From /public/Get-PSModuleTest.ps1 -Write-Verbose "[$scriptName] - [/public/Get-PSModuleTest.ps1] - Importing" +Write-Debug "[$scriptName] - [/public/Get-PSModuleTest.ps1] - Importing" #Requires -Modules Utilities @@ -272,10 +272,10 @@ function Get-PSModuleTest { Write-Output "Hello, $Name!" } -Write-Verbose "[$scriptName] - [/public/Get-PSModuleTest.ps1] - Done" +Write-Debug "[$scriptName] - [/public/Get-PSModuleTest.ps1] - Done" #endregion - From /public/Get-PSModuleTest.ps1 #region - From /public/New-PSModuleTest.ps1 -Write-Verbose "[$scriptName] - [/public/New-PSModuleTest.ps1] - Importing" +Write-Debug "[$scriptName] - [/public/New-PSModuleTest.ps1] - Importing" #Requires -Modules @{ModuleName='PSSemVer'; ModuleVersion='1.0'} @@ -304,10 +304,10 @@ function New-PSModuleTest { Write-Output "Hello, $Name!" } -Write-Verbose "[$scriptName] - [/public/New-PSModuleTest.ps1] - Done" +Write-Debug "[$scriptName] - [/public/New-PSModuleTest.ps1] - Done" #endregion - From /public/New-PSModuleTest.ps1 #region - From /public/Set-PSModuleTest.ps1 -Write-Verbose "[$scriptName] - [/public/Set-PSModuleTest.ps1] - Importing" +Write-Debug "[$scriptName] - [/public/Set-PSModuleTest.ps1] - Importing" function Set-PSModuleTest { <# @@ -336,10 +336,10 @@ function Set-PSModuleTest { } } -Write-Verbose "[$scriptName] - [/public/Set-PSModuleTest.ps1] - Done" +Write-Debug "[$scriptName] - [/public/Set-PSModuleTest.ps1] - Done" #endregion - From /public/Set-PSModuleTest.ps1 #region - From /public/Test-PSModuleTest.ps1 -Write-Verbose "[$scriptName] - [/public/Test-PSModuleTest.ps1] - Importing" +Write-Debug "[$scriptName] - [/public/Test-PSModuleTest.ps1] - Importing" function Test-PSModuleTest { <# @@ -362,19 +362,19 @@ function Test-PSModuleTest { Write-Output "Hello, $Name!" } -Write-Verbose "[$scriptName] - [/public/Test-PSModuleTest.ps1] - Done" +Write-Debug "[$scriptName] - [/public/Test-PSModuleTest.ps1] - Done" #endregion - From /public/Test-PSModuleTest.ps1 -Write-Verbose "[$scriptName] - [/public] - Done" +Write-Debug "[$scriptName] - [/public] - Done" #endregion - From /public #region - From /finally.ps1 -Write-Verbose "[$scriptName] - [/finally.ps1] - Importing" +Write-Debug "[$scriptName] - [/finally.ps1] - Importing" Write-Verbose '------------------------------' Write-Verbose '--- THIS IS A LAST LOADER ---' Write-Verbose '------------------------------' -Write-Verbose "[$scriptName] - [/finally.ps1] - Done" +Write-Debug "[$scriptName] - [/finally.ps1] - Done" #endregion - From /finally.ps1 $exports = @{ diff --git a/tests/outputTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 b/tests/outputTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 index 9bf1bb64..7a49dadb 100644 --- a/tests/outputTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 +++ b/tests/outputTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 @@ -1,5 +1,5 @@ [CmdletBinding()] -Param( +param( # Path to the module to test. [Parameter()] [string] $Path diff --git a/tests/srcTestRepo/src/variables/public/Planets.ps1 b/tests/srcTestRepo/src/variables/public/Planets.ps1 index 736584b9..5927bc51 100644 --- a/tests/srcTestRepo/src/variables/public/Planets.ps1 +++ b/tests/srcTestRepo/src/variables/public/Planets.ps1 @@ -1,4 +1,4 @@ -$script:Planets = @( +$script:Planets = @( @{ Name = 'Mercury' Mass = 0.330 diff --git a/tests/srcTestRepo/tests/PSModuleTest.Tests.ps1 b/tests/srcTestRepo/tests/PSModuleTest.Tests.ps1 index 9bf1bb64..7a49dadb 100644 --- a/tests/srcTestRepo/tests/PSModuleTest.Tests.ps1 +++ b/tests/srcTestRepo/tests/PSModuleTest.Tests.ps1 @@ -1,5 +1,5 @@ [CmdletBinding()] -Param( +param( # Path to the module to test. [Parameter()] [string] $Path diff --git a/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 b/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 index 736584b9..5927bc51 100644 --- a/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 +++ b/tests/srcWithManifestTestRepo/src/variables/public/Planets.ps1 @@ -1,4 +1,4 @@ -$script:Planets = @( +$script:Planets = @( @{ Name = 'Mercury' Mass = 0.330 diff --git a/tests/srcWithManifestTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 b/tests/srcWithManifestTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 index 9bf1bb64..7a49dadb 100644 --- a/tests/srcWithManifestTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 +++ b/tests/srcWithManifestTestRepo/tests/MyTests/PSModuleTest.Tests.ps1 @@ -1,5 +1,5 @@ [CmdletBinding()] -Param( +param( # Path to the module to test. [Parameter()] [string] $Path