machine / machine.specifications

Machine.Specifications is a Context/Specification framework for .NET that removes language noise and simplifies tests.
MIT License
885 stars 178 forks source link

Machine.Specifications is failing in Rider 2020.3 #423

Closed dp0h closed 3 years ago

dp0h commented 3 years ago

Getting the following excpetion when running MSpec tests in Rider 2020.3

Message = “ TestRunner: Application JetBrains.Rd.Tasks.RdFault: An exception was thrown while activating Machine.Specifications.Runner.ReSharper.Adapters.MspecRunner., reason: Autofac.Core.DependencyResolutionException: An exception was thrown while activating Machine.Specifications.Runner.ReSharper.Adapters.MspecRunner. ---> System.Runtime.Serialization.SerializationException: Type 'Machine.Specifications.Runner.ReSharper.Adapters.MspecRunner' in assembly 'Machine.Specifications.Runner.ReSharper.Adapters.net40, Version=2020.3.0.0, Culture=neutral, PublicKeyToken=null' is not marked as serializable. at System.AppDomain.CreateInstanceFromAndUnwrap(String assemblyFile, String typeName, Boolean ignoreCase, BindingFlags bindingAttr, Binder binder, Object[] args, CultureInfo culture, Object[] activationAttributes) at JetBrains.ReSharper.TestRunner.Extensions.AppDomainExtensions.CreateAndUnwrapFrom(AppDomain appDomain, Type type, Object[] args) in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Utilities\Extensions\AppDomainExtensions.cs:line 37 at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters, Object& decoratorTarget) --- End of inner exception stack trace --- at Autofac.Core.Resolving.InstanceLookup.Activate(IEnumerable1 parameters, Object& decoratorTarget) at Autofac.Core.Resolving.InstanceLookup.Execute() at Autofac.Core.Resolving.ResolveOperation.GetOrCreateInstance(ISharingLifetimeScope currentOperationScope, IComponentRegistration registration, IEnumerable1 parameters) at Autofac.Core.Resolving.ResolveOperation.Execute(IComponentRegistration registration, IEnumerable1 parameters) at JetBrains.ReSharper.TestRunner.Isolation.InAppDomainActivationBehavior.SmuggledDependencies.Create(AppDomain appDomain, IAssemblyResolver assemblyResolver, Type type, Parameter[] parameters) in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Core\Isolation\LoadContext.Net35.cs:line 158 at JetBrains.ReSharper.TestRunner.Isolation.LoadContext.Create(Type type, Object[] args) in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Core\Isolation\LoadContext.Net35.cs:line 99 at JetBrains.ReSharper.TestRunner.Implementation.TestAdapterLoadContextWrapperBase.InitializeTestExecutor() in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Merged\Implementation\TestAdapterLoadContextWrapper.cs:line 60 at JetBrains.ReSharper.TestRunner.Implementation.UnitTestRemoteAgent.Execute(TestRunRequest request) in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Merged\Implementation\UnitTestRemoteAgent.cs:line 68 at JetBrains.ReSharper.TestRunner.Implementation.ClientEndpoint.<>c__DisplayClass4_1.b1() in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Core\Implementation\ClientEndpoint.cs:line 56 at System.Threading.Tasks.Task`1.InnerInvoke() at System.Threading.Tasks.Task.Execute() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at JetBrains.ReSharper.TestRunner.Implementation.ClientEndpoint.d10.MoveNext() in C:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Core\Implementation\ClientEndpoint.cs:line 140 ”

robertcoltheart commented 3 years ago

Addressed in https://github.com/machine/machine.specifications.runner.resharper/pull/150

robertcoltheart commented 3 years ago

Released as v2020.3.1, pending approval by Jetbrains