ci changes
This commit is contained in:
parent
e7a2f46ff6
commit
d4bf1639c7
@ -1,6 +1,7 @@
|
||||
# Ben.Demystifier
|
||||
|
||||
[](https://www.nuget.org/packages/Ben.Demystifier/)
|
||||
[](https://ci.appveyor.com/project/benaadams/ben-demystifier)
|
||||
|
||||
## High performance understanding for stack traces
|
||||
|
||||
|
||||
34
appveyor.yml
Normal file
34
appveyor.yml
Normal file
@ -0,0 +1,34 @@
|
||||
image: Visual Studio 2017
|
||||
|
||||
shallow_clone: true
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
|
||||
skip_branch_with_pr: true
|
||||
|
||||
skip_tags: true
|
||||
|
||||
skip_commits:
|
||||
files:
|
||||
- BUILDING.md
|
||||
- CONTRIBUTING.md
|
||||
- ISSUE_TEMPLATE.md
|
||||
- LICENCE
|
||||
- README.md
|
||||
|
||||
nuget:
|
||||
disable_publish_on_pr: true
|
||||
|
||||
build_script:
|
||||
- ps: .\build.ps1 -target appveyor -buildAssemblyVersion ($env:BuildVersion + $env:APPVEYOR_BUILD_NUMBER) -buildSemanticVersion ($env:BuildSemanticVersion + $env:APPVEYOR_BUILD_NUMBER)
|
||||
|
||||
test: off
|
||||
|
||||
deploy: off
|
||||
|
||||
artifacts:
|
||||
- path: artifacts/build
|
||||
- path: artifacts/packages
|
||||
- path: artifacts/test
|
||||
32
build.ps1
Normal file
32
build.ps1
Normal file
@ -0,0 +1,32 @@
|
||||
<#
|
||||
.SYNOPSIS
|
||||
This is a helper function that runs a scriptblock and checks the PS variable $lastexitcode
|
||||
to see if an error occcured. If an error is detected then an exception is thrown.
|
||||
This function allows you to run command-line programs without having to
|
||||
explicitly check the $lastexitcode variable.
|
||||
.EXAMPLE
|
||||
exec { svn info $repository_trunk } "Error executing SVN. Please verify SVN command-line client is installed"
|
||||
#>
|
||||
function Exec
|
||||
{
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[Parameter(Position=0,Mandatory=1)][scriptblock]$cmd,
|
||||
[Parameter(Position=1,Mandatory=0)][string]$errorMessage = ($msgs.error_bad_command -f $cmd)
|
||||
)
|
||||
& $cmd
|
||||
if ($lastexitcode -ne 0) {
|
||||
throw ("Exec: " + $errorMessage)
|
||||
}
|
||||
}
|
||||
|
||||
if(Test-Path .\artifacts) { Remove-Item .\artifacts -Force -Recurse }
|
||||
|
||||
exec { & dotnet restore }
|
||||
|
||||
$revision = @{ $true = $env:APPVEYOR_BUILD_NUMBER; $false = 1 }[$env:APPVEYOR_BUILD_NUMBER -ne $NULL];
|
||||
$revision = "{0:D4}" -f [convert]::ToInt32($revision, 10)
|
||||
|
||||
exec { & dotnet test .\test\Ben.Demystifier.Test -c Release }
|
||||
|
||||
exec { & dotnet pack .\src\Ben.Demystifier -c Release -o .\artifacts --version-suffix=$revision }
|
||||
@ -6,6 +6,8 @@
|
||||
<Description>High performance understanding for stack traces (Make error logs more productive)</Description>
|
||||
<Authors>ben_a_adams</Authors>
|
||||
<RepositoryUrl>https://github.com/benaadams/Ben.Demystifier</RepositoryUrl>
|
||||
<PackageProjectUrl>https://github.com/benaadams/Ben.Demystifier</PackageProjectUrl>
|
||||
<PackageLicenseUrl>https://github.com/benaadams/Ben.Demystifier/blob/master/LICENSE</PackageLicenseUrl>
|
||||
<RepositoryType>git</RepositoryType>
|
||||
<IncludeSymbols>true</IncludeSymbols>
|
||||
<IncludeSource>true</IncludeSource>
|
||||
@ -14,7 +16,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net46</TargetFrameworks>
|
||||
<LangVersion>7.2</LangVersion>
|
||||
<LangVersion>7.1</LangVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
@ -8,7 +8,7 @@ namespace System.Collections.Generic.Enumerable
|
||||
public static EnumerableIList<T> Create<T>(IList<T> list) => new EnumerableIList<T>(list);
|
||||
}
|
||||
|
||||
public readonly struct EnumerableIList<T> : IEnumerableIList<T>, IList<T>
|
||||
public struct EnumerableIList<T> : IEnumerableIList<T>, IList<T>
|
||||
{
|
||||
private readonly IList<T> _list;
|
||||
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Linq;
|
||||
using System.Linq.Expressions;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading.Tasks;
|
||||
@ -37,15 +38,19 @@ namespace Demystify
|
||||
// Assert
|
||||
var stackTrace = demystifiedException.ToString();
|
||||
stackTrace = ReplaceLineEndings.Replace(stackTrace, "");
|
||||
var trace = stackTrace.Split(Environment.NewLine);
|
||||
var trace = stackTrace.Split(Environment.NewLine)
|
||||
// Remove items that vary between test runners
|
||||
.Where(s =>
|
||||
s != " at void System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, object state)" &&
|
||||
s != " at Task Demystify.DynamicCompilation.DoesNotPreventStackTrace()+()=>{}"
|
||||
)
|
||||
.ToArray();
|
||||
|
||||
Assert.Equal(
|
||||
new[] {
|
||||
"System.ArgumentException: Message",
|
||||
" at void lambda_method(Closure)",
|
||||
" at Task Demystify.DynamicCompilation.DoesNotPreventThrowStackTrace()+()=>{}",
|
||||
" at void System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, object state)",
|
||||
" at async Task Demystify.DynamicCompilation.DoesNotPreventThrowStackTrace()"},
|
||||
" at async Task Demystify.DynamicCompilation.DoesNotPreventStackTrace()"},
|
||||
trace);
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user