So I have a bunch of internal classes which I am trying to mock with RhinoMocks. I have added the following line to assemblyinfo.cs:
[assembly:InternalsVisibleTo(RhinoMocks.StrongName)]
However, this still does not allow me to mock internal classes; I get the following error message from NUnit:
MyTests.SomeTest: System.TypeLoadException : Method 'SomeMethod' on type 'SomeType504cf40be6b444abfd417dccf5d6752' from assembly 'DynamicProxyGenAssembly2, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' is overriding a method that is not visible from that assembly.
Note that I am using the 'merged' version of RhinoMocks (rather than the download option 'with Castle assemblies'). I don't know how Castle was merged into RhinoMocks but shouldn't making my internals visible to RhinoMocks, similarly make it visible to Castle (which is part of the Rhino.Mocks.dll)?
And so I finally got some time and worked out that all I needed to do was to add the following to AssemblyInfo.cs:
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With