Romanx / Cake.Coverlet

Coverlet extensions for Cake Build
MIT License
40 stars 15 forks source link

DotNetCoreTest: Object reference not set to an instance of an object #3

Closed jacobduijzer closed 6 years ago

jacobduijzer commented 6 years ago

When using the DotNetCoreTest as described in the documentation I get an null reference exception. I am using the latest version of Cake.Coverlet & coverlet.msbuild (as I also experienced the issue with overwritten configurations).

Cake info:

Package Cake.Coverlet.1.1.2 has already been installed. Successfully installed 'Cake.Coverlet 1.1.2' to /Users/jacob.duijzer/Documents/Projecten/Appcell/Redhotminute.Appollo.Cake.BuildScripts/tools/Addins Executing nuget actions took 1.05 ms The addin Cake.Coverlet will reference Cake.Coverlet.dll. Verifying assembly 'System.Security.Cryptography.ProtectedData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Verifying assembly 'System.Text.Encoding.CodePages, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Verifying assembly 'System.Security.Cryptography.ProtectedData, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Verifying assembly 'System.Text.Encoding.CodePages, Version=4.0.2.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. Verifying assembly 'Cake.Figlet, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.Xamarin, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.AppCenter, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.Tfs.Build.Variables, Version=0.0.8.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.Incubator, Version=2.0.2.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.Plist, Version=0.5.0.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Cake.AndroidAppManifest, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'. Verifying assembly 'Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'. Verifying assembly 'Cake.Coverlet, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null'.

Build script:

var testSettings = new DotNetCoreTestSettings { Configuration = configuration, NoBuild = true };

var coverletSettings = new CoverletSettings { CollectCoverage = true, CoverletOutputFormat = CoverletOutputFormat.opencover, CoverletOutputDirectory = Directory(@".\coverage-results\"), CoverletOutputName = $"results-{DateTime.UtcNow:dd-MM-yyyy-HH-mm-ss-FFF}" };

DotNetCoreTest(testProject.File, testSettings, coverletSettings);

Exception:

An error occurred when executing task 'TestCoverageReport'. Error: System.AggregateException: One or more errors occurred. ---> System.NullReferenceException: Object reference not set to an instance of an object at Cake.Coverlet.CoverletAliases+<>cDisplayClass0_0.b0 (Cake.Core.IO.ProcessArgumentBuilder args) [0x00000] in <5a96cf75f72f4de496f23eba75f8a82b>:0 at Cake.Core.Tooling.Tool1[TSettings].RunProcess (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments, Cake.Core.IO.ProcessSettings processSettings) [0x00034] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Cake.Core.Tooling.Tool1[TSettings].Run (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments, Cake.Core.IO.ProcessSettings processSettings, System.Action1[T] postAction) [0x0001c] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Cake.Common.Tools.DotNetCore.DotNetCoreTool1[TSettings].RunCommand (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments) [0x00009] in :0 at Cake.Common.Tools.DotNetCore.Test.DotNetCoreTester.Test (System.String project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings) [0x00018] in :0 at Cake.Common.Tools.DotNetCore.DotNetCoreAliases.DotNetCoreTest (Cake.Core.ICakeContext context, System.String project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings) [0x00035] in :0 at Cake.Coverlet.CoverletAliases.DotNetCoreTest (Cake.Core.ICakeContext context, Cake.Core.IO.FilePath project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings, Cake.Coverlet.CoverletSettings coverletSettings) [0x0004a] in <5a96cf75f72f4de496f23eba75f8a82b>:0 at Submission#0.DotNetCoreTest (Cake.Core.IO.FilePath project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings, Cake.Coverlet.CoverletSettings coverletSettings) [0x0000c] in <3568f0f447fa464b92b26eaa31fe9227>:0 at Submission#0.<>b0_31 () [0x000a5] in <3568f0f447fa464b92b26eaa31fe9227>:0 at Cake.Core.CakeTaskBuilderExtensions+<>cDisplayClass6_0.b0 (Cake.Core.ICakeContext context) [0x00000] in :0 at Cake.Core.CakeTaskBuilderExtensions+<>cDisplayClass8_0.b0 (Cake.Core.ICakeContext x) [0x00000] in :0 at Cake.Core.ActionTask+d14.MoveNext () [0x00066] in :0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in :0 at Cake.Core.DefaultExecutionStrategy+d4.MoveNext () [0x000ee] in :0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in :0 at Cake.Core.CakeEngine+d29.MoveNext () [0x0013c] in :0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in :0 at Cake.Core.CakeEngine+d18.MoveNext () [0x00229] in :0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in :0 at Cake.Scripting.BuildScriptHost+d3.MoveNext () [0x0008d] in <1fcc25d1681b4774adb1422aeed887e6>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.TaskAwaiter1[TResult].GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Cake.Core.Scripting.ScriptHost.RunTarget (System.String target) [0x0000d] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Submission#0+<<Initialize>>d__0.MoveNext () [0x0067f] in <3568f0f447fa464b92b26eaa31fe9227>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in :0 at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState+d91[TResult].MoveNext () [0x00186] in <7d37a385ddd24eeb96bd540d739cc157>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in :0 at Microsoft.CodeAnalysis.Scripting.Script`1+d21[T].MoveNext () [0x000a8] in <7d37a385ddd24eeb96bd540d739cc157>:0 --- End of inner exception stack trace --- at System.Threading.Tasks.Task.ThrowIfExceptional (System.Boolean includeTaskCanceledExceptions) [0x00011] in :0 at System.Threading.Tasks.Task.Wait (System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken) [0x00043] in :0 at System.Threading.Tasks.Task.Wait () [0x00000] in :0 at Cake.Scripting.Roslyn.RoslynScriptSession.Execute (Cake.Core.Scripting.Script script) [0x0019a] in <1fcc25d1681b4774adb1422aeed887e6>:0 at Cake.Core.Scripting.ScriptRunner.Run (Cake.Core.Scripting.IScriptHost host, Cake.Core.IO.FilePath scriptPath, System.Collections.Generic.IDictionary2[TKey,TValue] arguments) [0x00358] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Cake.Commands.BuildCommand.Execute (Cake.CakeOptions options) [0x00026] in <1fcc25d1681b4774adb1422aeed887e6>:0 at Cake.CakeApplication.Run (Cake.CakeOptions options) [0x00015] in <1fcc25d1681b4774adb1422aeed887e6>:0 at Cake.Program.Main () [0x000d1] in <1fcc25d1681b4774adb1422aeed887e6>:0 ---> (Inner Exception #0) System.NullReferenceException: Object reference not set to an instance of an object at Cake.Coverlet.CoverletAliases+<>c__DisplayClass0_0.<DotNetCoreTest>b__0 (Cake.Core.IO.ProcessArgumentBuilder args) [0x00000] in <5a96cf75f72f4de496f23eba75f8a82b>:0 at Cake.Core.Tooling.Tool1[TSettings].RunProcess (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments, Cake.Core.IO.ProcessSettings processSettings) [0x00034] in :0 at Cake.Core.Tooling.Tool1[TSettings].Run (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments, Cake.Core.IO.ProcessSettings processSettings, System.Action1[T] postAction) [0x0001c] in :0 at Cake.Common.Tools.DotNetCore.DotNetCoreTool1[TSettings].RunCommand (TSettings settings, Cake.Core.IO.ProcessArgumentBuilder arguments) [0x00009] in <a849174570cf4374842456f71c8c5e47>:0 at Cake.Common.Tools.DotNetCore.Test.DotNetCoreTester.Test (System.String project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings) [0x00018] in <a849174570cf4374842456f71c8c5e47>:0 at Cake.Common.Tools.DotNetCore.DotNetCoreAliases.DotNetCoreTest (Cake.Core.ICakeContext context, System.String project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings) [0x00035] in <a849174570cf4374842456f71c8c5e47>:0 at Cake.Coverlet.CoverletAliases.DotNetCoreTest (Cake.Core.ICakeContext context, Cake.Core.IO.FilePath project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings, Cake.Coverlet.CoverletSettings coverletSettings) [0x0004a] in <5a96cf75f72f4de496f23eba75f8a82b>:0 at Submission#0.DotNetCoreTest (Cake.Core.IO.FilePath project, Cake.Common.Tools.DotNetCore.Test.DotNetCoreTestSettings settings, Cake.Coverlet.CoverletSettings coverletSettings) [0x0000c] in <3568f0f447fa464b92b26eaa31fe9227>:0 at Submission#0.<<Initialize>>b__0_31 () [0x000a5] in <3568f0f447fa464b92b26eaa31fe9227>:0 at Cake.Core.CakeTaskBuilderExtensions+<>c__DisplayClass6_0.<Does>b__0 (Cake.Core.ICakeContext context) [0x00000] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Cake.Core.CakeTaskBuilderExtensions+<>c__DisplayClass8_0.<Does>b__0 (Cake.Core.ICakeContext x) [0x00000] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 at Cake.Core.ActionTask+<Execute>d__14.MoveNext () [0x00066] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Cake.Core.DefaultExecutionStrategy+<ExecuteAsync>d__4.MoveNext () [0x000ee] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Cake.Core.CakeEngine+<ExecuteTaskAsync>d__29.MoveNext () [0x0013c] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Cake.Core.CakeEngine+<RunTargetAsync>d__18.MoveNext () [0x00229] in <dbcc84a538bf40c49cc2872ffafe2d84>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <bb7b695b8c6246b3ac1646577aea7650>:0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in :0 at Cake.Scripting.BuildScriptHost+d3.MoveNext () [0x0008d] in <1fcc25d1681b4774adb1422aeed887e6>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () [0x00000] in :0 at Cake.Core.Scripting.ScriptHost.RunTarget (System.String target) [0x0000d] in :0 at Submission#0+<>d0.MoveNext () [0x0067f] in <3568f0f447fa464b92b26eaa31fe9227>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState+<RunSubmissionsAsync>d__91[TResult].MoveNext () [0x00186] in <7d37a385ddd24eeb96bd540d739cc157>:0 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in :0 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in :0 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in :0 at System.Runtime.CompilerServices.ConfiguredTaskAwaitable1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <bb7b695b8c6246b3ac1646577aea7650>:0 at Microsoft.CodeAnalysis.Scripting.Script1+d__21[T].MoveNext () [0x000a8] in <7d37a385ddd24eeb96bd540d739cc157>:0 <---

Any idea what could be the issue?

jacobduijzer commented 6 years ago

BTW changing this:

addin "nuget:?package=Cake.Coverlet&version=1.0.4"

to this

addin "nuget:?package=Cake.Coverlet"

works but then the issue with overwritten settings reappears.

Romanx commented 6 years ago

Hi @jacobduijzer #addin "nuget:?package=Cake.Coverlet" should download the latest which is 1.1.2 which has the argument overriding fixed and works with coverlet 2.1.1

Looking at yours logs it's downloading 1.1.2 i'm thinking I've made an error in calling the override arguments being passed. If you have time can you try adding

var testSettings = new DotNetCoreTestSettings
{
    Configuration = configuration,
    NoBuild = true,
   ArgumentCustomization = (args) => args
};

That may help narrow down the issue. I'll try take a look later today.

jacobduijzer commented 6 years ago

Yes, that is working!

Romanx commented 6 years ago

Okay it's because the function is being passed as null and i'm not checking it. Should be an easy fix and i'll get a release out for it tonight. Hopefully the workaround is okay for now.

jacobduijzer commented 6 years ago

Yes, I will use the workaround for now. Still have to refactor my build scripts because I was running tests twice, once for coverage result and once for the unit test result :)

Romanx commented 6 years ago

@jacobduijzer thanks for reporting this. The 1.1.3 release has just gone to nuget with the fix. Thanks for the great bug report! Let me know if you have any other issues

ctcoulter commented 6 years ago

I'm still having this issue with 1.2.1. Same workaround still works.

anthony-roe-cko commented 6 years ago

I am also having this issue again with 1.2.1 as @ctcoulter the fix still seems to work.

Romanx commented 6 years ago

@ctcoulter @anthony-roe-cko I'll have a look at the regression and i've opened a new issue for this #6

If either/both of you could post a stacktrace to that it would make it easier to trace if it's a different issue surfacing the same way.

Thanks,

ctcoulter commented 6 years ago

Settings:

Task("Test").Does(() => 
{
    foreach (var project in testProjects) 
    {
        var projectName = project.GetFilenameWithoutExtension().ToString();

        var testSettings = new DotNetCoreTestSettings 
        {
            Configuration = configuration,
            NoBuild = true,
            NoRestore = true,
            Logger = $"trx;LogFileName={projectName}.TestResults.xml",
            ResultsDirectory = distDir,
            //ArgumentCustomization = (args) => args
        };

        var coverletSettings = new CoverletSettings 
        {
            CollectCoverage = true,
            CoverletOutputFormat = CoverletOutputFormat.opencover,
            CoverletOutputDirectory = distDir,
            CoverletOutputName = $"{projectName}.Coverage.xml"
        };

        DotNetCoreTest(project.ToString(), testSettings, coverletSettings);
    }
});

Stack trace:

Executing task: Test
An error occurred when executing task 'Test'.
Error: System.AggregateException: One or more errors occurred. (Object reference not set to an instance of an object.) ---> System.NullReferenceException: Object reference not set to an instance of an object.
   at Cake.Coverlet.CoverletAliases.<>c__DisplayClass0_0.<DotNetCoreTest>b__0(ProcessArgumentBuilder args) in C:\projects\cake-coverlet\src\Cake.Coverlet\CoverletAliases.cs:line 35
   at Cake.Core.Tooling.Tool`1.RunProcess(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings) in C:\projects\cake\src\Cake.Core\Tooling\Tool.cs:line 166
   at Cake.Core.Tooling.Tool`1.Run(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings, Action`1 postAction) in C:\projects\cake\src\Cake.Core\Tooling\Tool.cs:line 101
   at Submission#0.DotNetCoreTest(FilePath project, DotNetCoreTestSettings settings, CoverletSettings coverletSettings)
   at Submission#0.<<Initialize>>b__0_2()
   at Cake.Core.CakeTaskBuilderExtensions.<>c__DisplayClass20_0.<Does>b__0(ICakeContext x) in C:\projects\cake\src\Cake.Core\CakeTaskBuilder.Execution.cs:line 82
   at Cake.Core.CakeTask.Execute(ICakeContext context) in C:\projects\cake\src\Cake.Core\CakeTask.cs:line 125
   at Cake.Core.DefaultExecutionStrategy.ExecuteAsync(CakeTask task, ICakeContext context) in C:\projects\cake\src\Cake.Core\DefaultExecutionStrategy.cs:line 87
   at Cake.Core.CakeEngine.ExecuteTaskAsync(ICakeContext context, IExecutionStrategy strategy, Stopwatch stopWatch, CakeTask task, CakeReport report) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 336
   at Cake.Core.CakeEngine.RunTask(ICakeContext context, IExecutionStrategy strategy, CakeTask task, String target, Stopwatch stopWatch, CakeReport report) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 284
   at Cake.Core.CakeEngine.RunTargetAsync(ICakeContext context, IExecutionStrategy strategy, ExecutionSettings settings) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 247
   at Cake.Scripting.BuildScriptHost.RunTargetAsync(String target) in C:\projects\cake\src\Cake\Scripting\BuildScriptHost.cs:line 47
   at Cake.Core.Scripting.ScriptHost.RunTarget(String target) in C:\projects\cake\src\Cake.Core\Scripting\ScriptHost.cs:line 191
   at Submission#0.<<Initialize>>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState.RunSubmissionsAsync[TResult](ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, StrongBox`1 exceptionHolderOpt, Func`2 catchExceptionOpt, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.Scripting.Script`1.RunSubmissionsAsync(ScriptExecutionState executionState, ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, Func`2 catchExceptionOpt, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at Cake.Scripting.Roslyn.RoslynScriptSession.Execute(Script script) in C:\projects\cake\src\Cake\Scripting\Roslyn\RoslynScriptSession.cs:line 129
   at Cake.Core.Scripting.ScriptRunner.Run(IScriptHost host, FilePath scriptPath, IDictionary`2 arguments) in C:\projects\cake\src\Cake.Core\Scripting\ScriptRunner.cs:line 212
   at Cake.Commands.BuildCommand.Execute(CakeOptions options) in C:\projects\cake\src\Cake\Commands\BuildCommand.cs:line 41
   at Cake.CakeApplication.Run(CakeOptions options) in C:\projects\cake\src\Cake\CakeApplication.cs:line 45
   at Cake.Program.Main() in C:\projects\cake\src\Cake\Program.cs:line 73
---> (Inner Exception #0) System.NullReferenceException: Object reference not set to an instance of an object.
   at Cake.Coverlet.CoverletAliases.<>c__DisplayClass0_0.<DotNetCoreTest>b__0(ProcessArgumentBuilder args) in C:\projects\cake-coverlet\src\Cake.Coverlet\CoverletAliases.cs:line 35
   at Cake.Core.Tooling.Tool`1.RunProcess(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings) in C:\projects\cake\src\Cake.Core\Tooling\Tool.cs:line 166
   at Cake.Core.Tooling.Tool`1.Run(TSettings settings, ProcessArgumentBuilder arguments, ProcessSettings processSettings, Action`1 postAction) in C:\projects\cake\src\Cake.Core\Tooling\Tool.cs:line 101
   at Submission#0.DotNetCoreTest(FilePath project, DotNetCoreTestSettings settings, CoverletSettings coverletSettings)
   at Submission#0.<<Initialize>>b__0_2()
   at Cake.Core.CakeTaskBuilderExtensions.<>c__DisplayClass20_0.<Does>b__0(ICakeContext x) in C:\projects\cake\src\Cake.Core\CakeTaskBuilder.Execution.cs:line 82
   at Cake.Core.CakeTask.Execute(ICakeContext context) in C:\projects\cake\src\Cake.Core\CakeTask.cs:line 125
   at Cake.Core.DefaultExecutionStrategy.ExecuteAsync(CakeTask task, ICakeContext context) in C:\projects\cake\src\Cake.Core\DefaultExecutionStrategy.cs:line 87
   at Cake.Core.CakeEngine.ExecuteTaskAsync(ICakeContext context, IExecutionStrategy strategy, Stopwatch stopWatch, CakeTask task, CakeReport report) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 336
   at Cake.Core.CakeEngine.RunTask(ICakeContext context, IExecutionStrategy strategy, CakeTask task, String target, Stopwatch stopWatch, CakeReport report) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 284
   at Cake.Core.CakeEngine.RunTargetAsync(ICakeContext context, IExecutionStrategy strategy, ExecutionSettings settings) in C:\projects\cake\src\Cake.Core\CakeEngine.cs:line 247
   at Cake.Scripting.BuildScriptHost.RunTargetAsync(String target) in C:\projects\cake\src\Cake\Scripting\BuildScriptHost.cs:line 47
   at Cake.Core.Scripting.ScriptHost.RunTarget(String target) in C:\projects\cake\src\Cake.Core\Scripting\ScriptHost.cs:line 191
   at Submission#0.<<Initialize>>d__0.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState.RunSubmissionsAsync[TResult](ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, StrongBox`1 exceptionHolderOpt, Func`2 catchExceptionOpt, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.Scripting.Script`1.RunSubmissionsAsync(ScriptExecutionState executionState, ImmutableArray`1 precedingExecutors, Func`2 currentExecutor, Func`2 catchExceptionOpt, CancellationToken cancellationToken)<---

If I remove the comment for the ArgumentCustomization setting, it works just fine (as mentioned earlier in thread).