Public/Add-TestResultToAppveyor.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
function Add-TestResultToAppveyor { <# .SYNOPSIS Upload test results to AppVeyor .DESCRIPTION Upload test results to AppVeyor .EXAMPLE Add-TestResultToAppVeyor -TestFile C:\testresults.xml .LINK https://github.com/RamblingCookieMonster/BuildHelpers .LINK about_BuildHelpers #> [CmdletBinding()] [OutputType([void])] Param ( # Appveyor Job ID [String] $APPVEYOR_JOB_ID = $Env:APPVEYOR_JOB_ID, [ValidateSet('mstest','xunit','nunit','nunit3','junit')] $ResultType = 'nunit', # List of files to be uploaded [Parameter(Mandatory, Position, ValueFromPipeline, ValueFromPipelineByPropertyName, ValueFromRemainingArguments )] [Alias("FullName")] [string[]] $TestFile ) begin { $wc = New-Object 'System.Net.WebClient' } process { foreach ($File in $TestFile) { if (Test-Path $File) { Write-Verbose "Uploading $File for Job ID: $APPVEYOR_JOB_ID" $wc.UploadFile("https://ci.appveyor.com/api/testresults/$ResultType/$($APPVEYOR_JOB_ID)", $File) } } } end { $wc.Dispose() } } |