This repository has been archived on 2023-10-10. You can view files and clone it, but cannot push or open issues or pull requests.
DroneHelper/.vscode/tasks.json

197 lines
7.3 KiB
JSON
Raw Permalink Normal View History

2022-07-13 13:59:25 +02:00
// A task runner that invokes Pester to run all Pester tests under the
// current workspace folder.
// NOTE: This Test task runner requires an updated version of Pester (>=4.0.3)
// in order for the problemMatcher to find failed test information (message, line, file).
// If you don't have that version, you can update Pester from the PowerShell Gallery
// with this command:
//
// PS C:\> Update-Module Pester
//
// If that gives an error like:
// "Module 'Pester' was not installed by using Install-Module, so it cannot be updated."
// then execute:
//
// PS C:\> Install-Module Pester -Scope CurrentUser -Force
//
// NOTE: The Clean, Build and Publish tasks require PSake. PSake can be installed
// from the PowerShell Gallery with this command:
//
// PS C:\> Install-Module PSake -Scope CurrentUser -Force
//
// Available variables which can be used inside of strings:
// ${workspaceFolder} the path of the workspace folder that contains the tasks.json file
// ${workspaceFolderBasename} the name of the workspace folder that contains the tasks.json file without any slashes (/)
// ${file} the current opened file
// ${relativeFile} the current opened file relative to the workspace folder containing the file
// ${fileBasename} the current opened file's basename
// ${fileBasenameNoExtension} the current opened file's basename without the extension
// ${fileDirname} the current opened file's dirname
// ${fileExtname} the current opened file's extension
// ${cwd} the task runner's current working directory on startup
// ${lineNumber} the current selected line number in the active file
{
"version": "2.0.0",
//"windows": {
// "options": {
// "shell": {
// // switch back to windows powershell 5.1
// // "executable": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
// "executable": "pwsh.exe",
// "args": [
// "-NoProfile",
// "-ExecutionPolicy",
// "Bypass",
// "-Command"
// ]
// }
// }
//},
//"linux": {
// "options": {
// "shell": {
// "executable": "/usr/bin/pwsh",
// "args": [
// "-NoProfile",
// "-Command"
// ]
// }
// }
//},
//"osx": {
// "options": {
// "shell": {
// "executable": "/usr/local/bin/pwsh",
// "args": [
// "-NoProfile",
// "-Command"
// ]
// }
// }
//},
"tasks": [
{
"label": "DroneHelper: Invoke-FileLinter",
"type": "shell",
"command": [
"Remove-Item ./build/FileLinter-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./failure.log -ErrorAction 'SilentlyContinue';",
"Import-Module ./src/DroneHelper.psd1;",
"Invoke-FileLinter"
],
"group": "test",
"problemMatcher": [
"$pester"
]
},
{
"label": "DroneHelper: Invoke-Linter",
"type": "shell",
"command": [
"Remove-Item ./build/ScriptAnalyzer-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./failure.log -ErrorAction 'SilentlyContinue';",
"Import-Module ./src/DroneHelper.psd1;",
"Invoke-Linter"
],
"group": "test",
"problemMatcher": [
"$pester"
]
},
{
"label": "DroneHelper: Invoke-UnitTest",
"type": "shell",
"command": [
"Remove-Item ./coverage.xml -ErrorAction 'SilentlyContinue';",
"Remove-Item ./testResults.xml -ErrorAction 'SilentlyContinue';",
"Remove-Item ./build/FileLinter-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./build/Pester-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./failure.log -ErrorAction 'SilentlyContinue';",
"Import-Module ./src/DroneHelper.psd1;",
"Invoke-UnitTest -CoverageFormat 'CoverageGutters' -Verbosity 'Detailed'"
],
"group": "test",
"problemMatcher": [
"$pester"
]
},
{
"label": "DroneHelper: Full Test",
"type": "shell",
"command": [
"Remove-Item ./build/ScriptAnalyzer-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./build/FileLinter-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./build/Pester-Results.log -ErrorAction 'SilentlyContinue';",
"Remove-Item ./coverage.xml -ErrorAction 'SilentlyContinue';",
"Remove-Item ./testResults.xml -ErrorAction 'SilentlyContinue';",
"Remove-Item ./failure.log -ErrorAction 'SilentlyContinue';",
"Import-Module ./src/DroneHelper.psd1;",
"Invoke-FileLinter;",
"Invoke-Linter;",
"Invoke-UnitTest -CoverageFormat 'CoverageGutters' -Verbosity 'Detailed'"
],
"group": {
"kind": "test",
"isDefault": true
},
"problemMatcher": [
"$pester"
]
},
{
"label": "Add dictionary item",
"type": "shell",
"command": [
"$DefaultFile = Get-ChildItem -Path './.vscode/dictionaries/default.txt';",
"$Content = Get-Content -Path $DefaultFile;",
"$Content += '${input:DictionaryItem}';",
"$Content = $Content | Sort-Object -Unique;",
"Set-Content -Value $Content -Path $DefaultFile"
],
"group": "none",
"problemMatcher": [
"$pester"
]
},
{
"label": "DroneHelper: New Docs",
"type": "shell",
"command": [
"Import-Module ./src/DroneHelper.psd1;",
"New-Docs"
],
"problemMatcher": []
},
{
"label": "DroneHelper: Update Docs",
"type": "shell",
"command": [
"Import-Module ./src/DroneHelper.psd1;",
"Update-Docs"
],
"problemMatcher": []
},
{
"label": "DroneHelper: Update Changelog",
"type": "shell",
"command": [
"Import-Module ./src/DroneHelper.psd1;",
"Update-Changelog -NewVersion '${input:NewVersion}'"
],
"problemMatcher": []
}
],
"inputs": [
{
"id": "DictionaryItem",
"type": "promptString",
"description": "Input for dictionary file default.txt"
},
{
"id": "NewVersion",
"type": "promptString",
"description": "Enter a new semver version id",
"default": "v1.0.0"
}
]
}