I can't think of anything MbUnit might try to do with the dynamic proxy type. It probably doesn't know it exists. Are you using TypeFixture or factories or other advanced MbUnit features in your tests?
However since you mention it works in the GUI. Try setting the ApartmentState property on your test fixture, like this: [TestFixture(ApartmentState=ApartmentState.STA)] Jeff. -----Original Message----- From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of [EMAIL PROTECTED] Sent: Thursday, January 17, 2008 12:11 PM To: MbUnit.User Subject: MbUnit Re: Fatal Crash, not sure why the strange thing is sometimes (i hate that word in programming:) ) all the test run successfully, other times they run and some test using generics fails, but mbunit does not crash. Then still other times it crashes like above. I believe it is crashing at 2 or 3 specific tests. whichever one is reached 1/st2nd? then it fails. it also doesn't fail if I run the gui (web forms) or mbunit gui. I haven't tried mbunit.console yet. there is alot (probally too much) code to post to incorporate to reproduce the problem. not knowing much about dynamic proxies/generics. could it be the generic variable is cross referenced with another object. for example: interface Foo<MyType> { } interface Bar<MyType> : where MyType ISomeOtherInterface, new() { } mbunit is trying to pass the Foo MyType to the Bar MyType which can work? This seems to be what the error message states. If that's the case, would prefixing MyType (company name) fix the problem? interface Foo<AcmeMyType> { } interface Bar<MyType> : where MyType ISomeOtherInterface, new() { } Thank you, Jason On Jan 17, 1:33 pm, "Jeff Brown" <[EMAIL PROTECTED]> wrote: > So this looks like a dynamic proxy type that is being created by LLBL > itself while your test runs. I don't think MbUnit is doing anything > directly to cause it. I would guess that LLBL is generating bad code. > > It looks like the error is being detected while a stack trace for some > other Exception is being produced. You'll notice the failure occurs > in GetSignature while getting the stack trace of an Exception in order > to report the original error. So the original Exception itself is being lost. > It probably occurred inside the malformed dynamic proxy class. > > Could you attach the source to your UserRepositoryTest and any > relevant objects? > > You might also want to check on the LLBL mailing list. > > Jeff. > > > > -----Original Message----- > From: [email protected] [mailto:[EMAIL PROTECTED] > On > > Behalf Of [EMAIL PROTECTED] > Sent: Thursday, January 17, 2008 8:35 AM > To: MbUnit.User > Subject: MbUnit Re: Fatal Crash, not sure why > > I just re-ran the tests twice to confirm the issue. the 1st re-run > completed successfullly. the 2nd crashed again. Similiar issue with > mis-matched generics, but at a different location. > > [failure] > UserRepositoryTest.Setup.Should_return_user_from_ldap_if_not_present_i > n_database: GenericArguments[0], 'TypeOfItem', on > 'IDbGatewayFactoryProxy3a9aab2 > b37e34599bd9e40543e372619+InvocationCreateEntity_14[TypeOfEntity]' > violates the > constraint of type parameter 'TypeOfEntity'. > [failure] > UserRepositoryTest.Setup.Should_be_able_to_fetch_a_user_entity_from_th > e_database: GenericArguments[0], 'TypeOfItem', on > 'IDbGatewayFactoryProxy3a9aab2 > b37e34599bd9e40543e372619+InvocationCreateEntity_14[TypeOfEntity]' > violates the > constraint of type parameter 'TypeOfEntity'. > [success] UserRepositoryTest.Setup.Should_be_able_to_fetch_all_users > [error] Unexpected exception occured in MbUnit Internal error while > running tests in ReportingFramework.Tests > MbUnit.Core.Exceptions.FixtureExecutionException > Message: UserRepositoryTest > Source: MbUnit.Framework > StackTrace: > at MbUnit.Core.Remoting.FixtureRunnerBase.RunFixture(Fixture > fixture) > at MbUnit.Core.Remoting.DependencyFixtureRunner.RunFixtures() > at MbUnit.Core.Remoting.FixtureRunnerBase.Run(FixtureExplorer > explorer, Repor > tListener reportListener) > Inner Exception > System.TypeLoadException > Message: GenericArguments[0], 'TypeOfItem', on > 'SD.LLBLGen.Pro.ORMSupportClasses .CollectionCore`1[T]' violates the > constraint of type parameter 'T'. > Source: mscorlib > StackTrace: > at System.Signature._GetSignature(SignatureStruct& signature, Void* > pCorSig, > Int32 cCorSig, IntPtr fieldHandle, IntPtr methodHandle, IntPtr > declaringTypeHand > le) > at System.Signature.GetSignature(SignatureStruct& signature, Void* > pCorSig, I > nt32 cCorSig, RuntimeFieldHandle fieldHandle, RuntimeMethodHandle > methodHandle, RuntimeTypeHandle declaringTypeHandle) > at System.Signature..ctor(RuntimeMethodHandle methodHandle, > RuntimeTypeHandle > declaringTypeHandle) > at System.Reflection.RuntimeMethodInfo.get_Signature() > at System.Reflection.RuntimeMethodInfo.GetParameters() > at System.Diagnostics.StackTrace.ToString(TraceFormat traceFormat) > at System.Environment.GetStackTrace(Exception e, Boolean > needFileInfo) > at System.Exception.get_StackTrace() > at > MbUnit.Core.Reports.Serialization.ReportException.FromException(Except > ion > ex) > at MbUnit.Core.Reports.Serialization.ReportRun.Failure(RunPipe > pipe, ReportMo > nitor monitor, Exception ex) > at MbUnit.Core.RunPipeStarter.Run(Object fixture, Boolean > IsExplicit) > at > MbUnit.Core.Remoting.FixtureRunnerBase.InternalRunFixture(Fixture > fixture) > > at > MbUnit.Core.Remoting.FixtureRunnerBase.FixtureRunnerStarter.Start() > > [cleaning] unloading domain > [cleaning] domain unloaded > > On Jan 17, 11:18 am, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> > wrote: > > I have been experiencing this problem on and off for about a week. > > I'm using v2.41.232.0. The problem does not occur if I test via the GUI. > > > The problem occurs with this code > > using System; > > using MbUnit.Core; > > > namespace ReportingFramework.Tests > > { > > internal class Program > > { > > private static void Main() > > { > > using (AutoRunner runner = new AutoRunner()) > > { > > runner.Run(); > > if (!runner.IsSuccess) runner.ReportToText(); > > } > > Console.ReadKey(); > > } > > } > > > } > > > here is the console output: > > -------------------------------------------------------------------- > > -- > > --------------------------------------- > > [error] Unexpected exception occured in MbUnit Internal error while > > running tests in ReportingFramework.Tests > > MbUnit.Core.Exceptions.FixtureExecutionException > > Message: ConfigureReportTaskTest > > Source: MbUnit.Framework > > StackTrace: > > at MbUnit.Core.Remoting.FixtureRunnerBase.RunFixture(Fixture > > fixture) > > at MbUnit.Core.Remoting.DependencyFixtureRunner.RunFixtures() > > at MbUnit.Core.Remoting.FixtureRunnerBase.Run(FixtureExplorer > > explorer, Repor > > tListener reportListener) > > Inner Exception > > System.TypeLoadException > > Message: GenericArguments[0], 'TypeOfItem', on > > 'SD.LLBLGen.Pro.ORMSupportClasses .CollectionCore`1[T]' violates the > > constraint of type parameter 'T'. > > Source: mscorlib > > StackTrace: > > at System.Signature._GetSignature(SignatureStruct& signature, > > Void* pCorSig, > > Int32 cCorSig, IntPtr fieldHandle, IntPtr methodHandle, IntPtr > > declaringTypeHand > > le) > > at System.Signature.GetSignature(SignatureStruct& signature, > > Void* pCorSig, I > > nt32 cCorSig, RuntimeFieldHandle fieldHandle, RuntimeMethodHandle > > methodHandle, RuntimeTypeHandle declaringTypeHandle) > > at System.Signature..ctor(RuntimeMethodHandle methodHandle, > > RuntimeTypeHandle > > declaringTypeHandle) > > at System.Reflection.RuntimeMethodInfo.get_Signature() > > at System.Reflection.RuntimeMethodInfo.GetParameters() > > at System.Diagnostics.StackTrace.ToString(TraceFormat > > traceFormat) > > at System.Environment.GetStackTrace(Exception e, Boolean > > needFileInfo) > > at System.Exception.get_StackTrace() > > at > > MbUnit.Core.Reports.Serialization.ReportException.FromException(Exce > > pt > > ion > > ex) > > at MbUnit.Core.Reports.Serialization.ReportRun.Failure(RunPipe > > pipe, ReportMo > > nitor monitor, Exception ex) > > at MbUnit.Core.RunPipeStarter.Run(Object fixture, Boolean > > IsExplicit) > > at > > MbUnit.Core.Remoting.FixtureRunnerBase.InternalRunFixture(Fixture > > fixture) > > > at > > MbUnit.Core.Remoting.FixtureRunnerBase.FixtureRunnerStarter.Start() > > > [cleaning] unloading domain > > [cleaning] domain unloaded > > > After reviewing the stack trace above it appears mbunit is mixing up > > generic calls. 'TypeOfItem' is never referenced in the > > ORMSupportClass (LLBL 3rd party). I do have a generic object using > > 'TypeOfItem' but that doesn't have anything to do with ORMSupportClass. > > > It also doesn't make sense that the error only occurs with > > autorunner and not the GUI. I'm new to unit testing and rhino mocks > > so I could be missing something, but this is very confusing. Any > > help is very appreciated. > > > Thank you, Jason- Hide quoted text - > > - Show quoted text - --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "MbUnit.User" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/MbUnitUser?hl=en -~----------~----~----~----~------~----~------~--~---
