You said in your original email that it worked on every PC but the one - were 
you not running the same code?

On Sep 2, 2010, at 4:35 AM, Mark Whitfeld <[email protected]> wrote:

> I have found the problem!!!!!
> It is so simple, but so easy to miss!
> If you had have run the tests I posted, it would also have failed for
> you.
> So, it is nothing to do with it not working on my machine, but it is
> all about the actual code being tested! Curious...?
> Well Have a look at these two tests:
> 
> [TestFixture]
> public class TestMocking
> {
>    [Test]
>    public void Test_ThisWorks()
>    {
>        IBob bob = MockRepository.GenerateStub<IBob>();
>        bob.AssertWasNotCalled(bob1 => bob1.Action());
>    }
> 
>    [Test]
>    public void Test_ThisDoesntWork()
>    {
>        IBob bob = MockRepository.GenerateStub<IBob>();
>        bob.AssertWasNotCalled(bob1 => bob.Action());
>    }
> }
> 
> public interface IBob
> {
>    void Action();
> }
> 
> The one works, but the other doesn't... Do you spot the difference?
> :)... Dramatic pause...
> The second test refers to the outside variable in the lambda instead
> of the parameter!
> That's it. That is why it is failing! So simple, but so easy to miss.
> The reason why it worked on other PCs is because I just typed out the
> tests again there instead of copy pasting the code (I was being lazy,
> ok).
> 
> But this does bring me to that error message:
> "No expectations were setup to be verified, ensure that the method
> call in the action is a virtual (C#) / overridable (VB.Net) method
> call"
> 
> It really throws you doesn't it! Well, for me it does.
> Would it not be a good thing to add a check on the lambda expression
> to see if it calls a method on the actual parameter passed in anywhere
> in the lambda.
> Or does it not use lambda expressions for this...
> 
> Anyway. Problem solved. I don't need to reformat my PC anymore (maybe
> just my mind...).
> Shot for your efforts.
> -Mark
> 
> On Aug 27, 2:49 pm, Tim Barcz <[email protected]> wrote:
>> Ah ok ok... So you were in VS 2010? I can run then on my machine as well
>> 
>> On Aug 27, 2010, at 7:38 AM, Mark Whitfeld <[email protected]> wrote:
>> 
>>> Ok, I checked out the rhino mocks code and ran all the tests.
>>> The tests all pass and if I add my test above, it also passes!
>> 
>>> It seems that it is not working in new VS2010 projects.
>>> I will investigate further when I get a chance...
>> 
>>> On Aug 27, 9:11 am, Mark Whitfeld <[email protected]> wrote:
>>>> Yeah, my previous machine was Win 7 64-bit as well and it worked.
>>>> It only doesn't run on this machine... Arrgh!
>> 
>>>> What do you mean by TDD.net? Never heard of it. Unless you mean
>>>> TestDriven.net, but I don't use that because I have resharper.
>> 
>>>> I don't hink that this is an issue with the test runner because it
>>>> gives the same result no matter what test runner I use.
>>>> The issue is possibly in how Rhino Mocks is determining whether it can
>>>> mock the interface.
>>>> But something is breaking on my machine only. Do you think it could be
>>>> a permissions issue. I am an administrator on this machine though.
>> 
>>>> I think I will download the Rhino Mocks Source code and try to run
>>>> it's tests. Possibly even debug this from the source code.
>> 
>>>> On Aug 26, 4:55 pm, Tim Barcz <[email protected]> wrote:
>> 
>>>>> Oddly I have a Win 7 64-bit system and everything works fine.....
>> 
>>>>> What version of TDD.NET?
>> 
>>>>> On Thu, Aug 26, 2010 at 2:31 AM, Mark Whitfeld 
>>>>> <[email protected]>wrote:
>> 
>>>>>> Hi Tim
>> 
>>>>>> I am using NUnit 2.5.6, I have also tried 2.5.3 as well as the
>>>>>> Resharper Test runner.
>>>>>> It doesn't work in any of these... Only on my machine... :(
>> 
>>>>>> Thanks
>>>>>> -Mark
>> 
>>>>>> On Aug 25, 3:43 pm, Tim Barcz <[email protected]> wrote:
>>>>>>> Mark,
>> 
>>>>>>> Please tell me what version of NUnit are you running?
>> 
>>>>>>> Tim
>> 
>>>>>>> On Wed, Aug 25, 2010 at 2:06 AM, Mark Whitfeld <[email protected]
>>>>>>> wrote:
>> 
>>>>>>>> Oh, before I forget to mention. I am using Rhino.Mocks 3.6
>> 
>>>>>>>> Thanks for your reply.
>>>>>>>> Yeah, I tried that as well. It doesn't work either...
>>>>>>>> I get:
>> 
>>>>>>>> System.InvalidOperationException : No expectations were setup to be
>>>>>>>> verified, ensure that the method call in the action is a virtual
>>>>>>>> (C#) / overridable (VB.Net) method call
>>>>>>>> at
>> 
>>>>>> Rhino.Mocks.RhinoMocksExtensions.AssertExactlySingleExpectaton(MockRepository
>>>>>>>> mocks, T mockToRecordExpectation)
>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.GetExpectationsToVerify(T mock,
>>>>>>>> Action`1 action, Action`1 setupConstraints)
>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.AssertWasNotCalled(T mock,
>>>>>>>> Action`1 action, Action`1 setupConstraints)
>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.AssertWasNotCalled(T mock,
>>>>>>>> Action`1 action)
>>>>>>>> at Habanero.Templates.Test.Processor.TestMocking.Test_ShouldWork
>> 
>>>>>>>> It fails in the same place. Could it be an issue with Castle do you
>>>>>>>> think?
>>>>>>>> I hope I don't have to use a different mocking framework just because
>>>>>>>> it doesn't work on my machine!
>> 
>>>>>>>> On Aug 24, 3:43 pm, Tuna Toksoz <[email protected]> wrote:
>>>>>>>>> [TestFixture]
>>>>>>>>> public class TestMocking
>>>>>>>>> {
>>>>>>>>>        [Test]
>>>>>>>>>        public void Test_AssertWasNotCalled_ShouldWork()
>>>>>>>>>        {
>>>>>>>>>                var bob = MockRepository.GenerateMock<IBob>();
>>>>>>>>>                bob.AssertWasNotCalled(o => o.Action());
>>>>>>>>>        }
>> 
>>>>>>>>> }
>> 
>>>>>>>>> Can you try that?
>> 
>>>>>>>>> Tuna Toksöz
>>>>>>>>> Eternal sunshine of the open source mind.
>> 
>>>>>>>> http://devlicio.us/blogs/tuna_toksozhttp://tunatoksoz.comhttp://twitt.
>>>>>> ..
>> 
>>>>>>>>> On Tue, Aug 24, 2010 at 3:30 AM, Mark Whitfeld <
>>>>>> [email protected]
>>>>>>>>> wrote:
>> 
>>>>>>>>>> OK, I'm so stumped about this one!
>>>>>>>>>> I have been using Rhino Mocks for years and it has never given me
>>>>>>>>>> problems.
>>>>>>>>>> I run the following simple code and it gives this error message:
>> 
>>>>>>>>>> (on the line with AssertWasNotCalled)
>>>>>>>>>> System.InvalidOperationException : No expectations were setup to be
>>>>>>>>>> verified, ensure that the method call in the action is a virtual
>>>>>>>>>> (C#) / overridable (VB.Net) method call
>> 
>>>>>>>>>> Stack Trace:
>>>>>>>>>> at
>>>>>> Rhino.Mocks.RhinoMocksExtensions.AssertExactlySingleExpectaton[T]
>>>>>>>>>> (MockRepository mocks, T mockToRecordExpectation)
>>>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.GetExpectationsToVerify[T](T
>>>>>> mock,
>>>>>>>>>> Action`1 action, Action`1 setupConstraints)
>>>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.AssertWasNotCalled[T](T mock,
>>>>>>>>>> Action`1 action, Action`1 setupConstraints)
>>>>>>>>>> at Rhino.Mocks.RhinoMocksExtensions.AssertWasNotCalled[T](T mock,
>>>>>>>>>> Action`1 action)
>>>>>>>>>> at Habanero.Templates.Test.Processor.TestMocking.Test_ShouldWork()
>> 
>>>>>>>>>> Here is the code (I know its testing the mocking framework, that's
>>>>>> the
>>>>>>>>>> point):
>> 
>>>>>>>>>> [TestFixture]
>>>>>>>>>> public class TestMocking
>>>>>>>>>> {
>>>>>>>>>>        [Test]
>>>>>>>>>>        public void Test_AssertWasNotCalled_ShouldWork()
>>>>>>>>>>        {
>>>>>>>>>>                var bob = MockRepository.GenerateStub<IBob>();
>>>>>>>>>>                bob.AssertWasNotCalled(o => o.Action());
>>>>>>>>>>        }
>>>>>>>>>> }
>> 
>>>>>>>>>> public interface IBob
>>>>>>>>>> {
>>>>>>>>>>        void Action();
>>>>>>>>>> }
>> 
>>>>>>>>>> The project is compiled for AnyCPU (and I have tried all the
>>>>>> others)
>>>>>>>>>> and .NET 3.5.
>>>>>>>>>> This fails on my PC, but works on every other PC. Aaaargh!
>> 
>>>>>>>>>> My PC is as follows:
>>>>>>>>>> Intel Core i7 CPU 860 @ 2.80GHz
>>>>>>>>>> 8.00 GB RAM
>>>>>>>>>> Windows 7 64-bit OS
>> 
>>>>>>>>>> I have restarted Visual Studio, and the PC as well as run the tests
>>>>>>>>>> from Resharper and the nunit test runner.
>>>>>>>>>> All have the same result: It fails!
>> 
>>>>>>>>>> Please help!
>> 
>>>>>>>>>> --
>>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>> Groups
>>>>>>>>>> "Rhino.Mocks" group.
>>>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>>>> [email protected]<rhinomocks%[email protected]>
>>>>>> <rhinomocks%[email protected]<rhinomocks%[email protected]>
>> 
>>>>>>>> <rhinomocks%[email protected]<rhinomocks%[email protected]>
>>>>>> <rhinomocks%[email protected]<rhinomocks%[email protected]>
>> 
>>>>>>>>>> .
>>>>>>>>>> For more options, visit this group at
>>>>>>>>>> http://groups.google.com/group/rhinomocks?hl=en.
>> 
>>>>>>>> --
>>>>>>>> You received this message because you are subscribed to the Google
>>>>>> Groups
>>>>>>>> "Rhino.Mocks" group.
>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>> [email protected]<rhinomocks%[email protected]>
>>>>>> <rhinomocks%[email protected]<rhinomocks%[email protected]>
>> 
>>>>>>>> .
>>>>>>>> For more options, visit this group at
>>>>>>>> http://groups.google.com/group/rhinomocks?hl=en.
>> 
>>>>>>> --
>>>>>>> Tim Barcz
>>>>>>> Microsoft C# MVP
>>>>>>> Microsoft ASPInsiderhttp://timbarcz.devlicio.ushttp://
>>>>>> www.twitter.com/timbarcz
>> 
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google Groups
>>>>>> "Rhino.Mocks" group.
>>>>>> To post to this group, send email to [email protected].
>>>>>> To unsubscribe from this group, send email to
>>>>>> [email protected]<rhinomocks%[email protected]>
>>>>>> .
>>>>>> For more options, visit this group at
>>>>>> http://groups.google.com/group/rhinomocks?hl=en.
>> 
>>>>> --
>>>>> Tim Barcz
>>>>> Microsoft C# MVP
>>>>> Microsoft 
>>>>> ASPInsiderhttp://timbarcz.devlicio.ushttp://www.twitter.com/timbarcz
>> 
>>> --
>>> You received this message because you are subscribed to the Google Groups 
>>> "Rhino.Mocks" 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 
>>> athttp://groups.google.com/group/rhinomocks?hl=en.
>> 
>> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Rhino.Mocks" 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/rhinomocks?hl=en.
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Rhino.Mocks" 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/rhinomocks?hl=en.

Reply via email to