Smocks icon indicating copy to clipboard operation
Smocks copied to clipboard

.net core support

Open astorDev opened this issue 6 years ago • 1 comments

Unfortunately, this code

Smock.Run(context =>{ context.Setup(() => DateTime.Now).Returns(new DateTime(2000, 1, 1)); Assert.AreEqual(DateTime.Now, new DateTime(2000, 1, 1));});

throws following exception if executed in .net core mstest project:

Mono.Cecil.AssemblyResolutionException: Failed to resolve assembly: 'Smocks, Version=0.7.3.0, Culture=neutral, PublicKeyToken=8fd36cb3814cff51'

astorDev avatar Jul 03 '18 11:07 astorDev

I have a different error. The following code: (sorry for formatting, that's the best I could get)

Smock.Run(context =>
{
    context.Setup(() => DateTime.UtcNow).Returns(new DateTime(1970, 1, 1));
});

throws an error: 

System.ArgumentOutOfRangeException : Specified argument was out of the range of valid values.
   at Mono.Collections.Generic.Collection`1.get_Item(Int32 index)
   at Mono.Cecil.BaseAssemblyResolver.GetAssemblyInNetGac(AssemblyNameReference reference, ReaderParameters parameters)
   at Mono.Cecil.BaseAssemblyResolver.GetAssemblyInGac(AssemblyNameReference reference, ReaderParameters parameters)
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name, ReaderParameters parameters)
   at Mono.Cecil.BaseAssemblyResolver.Resolve(AssemblyNameReference name)
   at Mono.Cecil.DefaultAssemblyResolver.Resolve(AssemblyNameReference name)
   at Mono.Cecil.MetadataResolver.Resolve(TypeReference type)
   at Mono.Cecil.MetadataResolver.Resolve(MethodReference method)
   at Mono.Cecil.ModuleDefinition.Resolve(MethodReference method)
   at Mono.Cecil.MethodReference.Resolve()
   at Smocks.IL.Dependencies.DependencyGraphBuilder.DependencyGraphInstructionVisitor.VisitMethod(Instruction instruction, MethodReference operand)
   at Smocks.IL.Visitors.InstructionVisitorBase`1.VisitInlineTok(Instruction instruction, MethodReference methodReference)
   at Smocks.IL.InstructionExtensions.VisitInlineTok[T](Instruction instruction, IInstructionVisitor`1 visitor)
   at Smocks.IL.InstructionExtensions.Accept[T](Instruction instruction, IInstructionVisitor`1 visitor)
   at Smocks.IL.Dependencies.DependencyGraphBuilder.BuildGraphForMethod(MethodBase method)
   at Smocks.Smock.CreateAssemblyRewriter(Delegate delegate, Configuration configuration)
   at Smocks.Smock.RunAction(Action`1 action, Configuration configuration)
   at Smocks.Smock.Run(Configuration configuration, Action`1 action)
   at Smocks.Smock.Run(Action`1 action)

sgermain06 avatar Sep 30 '19 16:09 sgermain06