﻿<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Ayende @ Rahien</title><link>http://ayende.com</link><description>Ayende @ Rahien</description><copyright>Copyright (C) Ayende Rahien  2004 - 2021 (c) 2026</copyright><ttl>60</ttl><item><title>Jeremy Gray commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>@Oren - Ahh, that sheds a bit more light on things. Too bad, though, as I have often found that refactorings to clean up Demeter / Tell, Don't Ask violations end up introducing nice clear names for the actions being taken by the code.
  
  
In any case, thanks for taking the time to post up some of your favorite tidbits from within Rhino.Mocks. For folks like me who love using Rhino.Mocks but who haven't had an opportunity to dig into its code, the little bits of insight into its inner workings are greatly appreciated.
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment6</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment6</guid><pubDate>Mon, 14 Jul 2008 02:47:24 GMT</pubDate></item><item><title>Ayende Rahien commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>Jermey,
  
ExpectationVerificationInformation is a DTO, it contains just the expectation and the actual arguments made.
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment5</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment5</guid><pubDate>Mon, 14 Jul 2008 02:29:12 GMT</pubDate></item><item><title>Aaron Jensen commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>I think it's an ingenious approach for adding AssertWasCalled to a record replay framework without completely redoing the plumbing. I applaud you for that. 
  
  
It's very complicated though and someone who is not totally familiar with the internals of Rhino.Mocks will find it scary. Scary doesn't mean bad, it just means that its not understandable at first glance. It requires some digging and who knows what you'll find.
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment4</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment4</guid><pubDate>Mon, 14 Jul 2008 01:19:44 GMT</pubDate></item><item><title>Neal Blomfield commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>The scary thing about this is it's getting to the point were I expect no less from you Oren.  You're code repeatedly makes me look at how we can achieve what is required in different (and better) ways - you take thinking outside the box to a whole new level.  Nice code, great way to solve the problem and I am looking forward to being able to use it if I ever get round to building some .NET 3.5 bits :)
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment3</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment3</guid><pubDate>Sun, 13 Jul 2008 20:19:22 GMT</pubDate></item><item><title>Jeremy Gray commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>While I'm sure it will take me a bit to get my head fully wrapped around everything that is going on in GetExpectationsToVerify, I do have a small comment about AssertWasCalled:
  
  
Law of Demeter violation alert!
  
  
You begin a minor violation at the foreach line, which gets much more serious when ".Expected." starts showing up repeatedly. If these things were factored into their proper locations (probably everything from the foreach on down first being moved into ExpectationVerificationInformation, and then all of the ".Expected." blocks moved into their appropriate types), with clear names assigned to each new member generated in the process, perhaps that Rhino.Mocks contributor, and others, would have an easier time building up an understanding of the code.
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment2</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment2</guid><pubDate>Sun, 13 Jul 2008 19:01:41 GMT</pubDate></item><item><title>Frank Quednau commented on Beautiful (nontrivial) Code - Rhino Mocks 3.5's AssertWasCalled</title><description>"Extending Rhino Mocks with Rhino Mocks" - No kidding, sometimes I look at some object implementation in a system and wonder why I bother with an implementation if I could instead use Rhino Mocks, declare what I want the instance to do and be done with it.
  
  
</description><link>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment1</link><guid>http://ayende.com/3412/beautiful-nontrivial-code-rhino-mocks-3-5s-assertwascalled#comment1</guid><pubDate>Sun, 13 Jul 2008 09:58:48 GMT</pubDate></item></channel></rss>