[Ironruby-core] Building expressions

Shri Borde Shri.Borde at microsoft.com
Sun May 3 17:37:04 EDT 2009

It cannot be done. Even if you could get to the ExpressionTree of a Ruby lambda, the ExpressionTree would be loosely-bound as Ruby uses duck-typing, whereas Moq expects a strongly-typed ExpressionTree so that it can figure out the exact method that you are trying to associate some expectation with.

FWIW, Mark had also been playing with mocking, and in our discussions, we said that the easiest mocking approach would be to use Ruby features like method_missing, monkey-patching, etc (like rspec does). Ie. something like this:

def mock(clrInterface):
  class ClrMock < clrInterface
    # monkey-patch all of “clrInterface.methods" here, and redirect to the mocking framework
  return ClrMock.new

From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Ivan Porto Carrero
Sent: Sunday, May 03, 2009 3:18 AM
To: ironruby-core
Subject: [Ironruby-core] Building expressions


I'm trying to get some Moq mockery going in IronRuby but Moq expects Expression<Func<MyObject, TReturn>> in his methods.
Is there a way to make a RubyProc/lambda return an expression or convert it to an expression?

Met vriendelijke groeten - Best regards - Salutations
Ivan Porto Carrero
Author of IronRuby in Action (http://manning.com/carrero)

Steve Martin<http://www.brainyquote.com/quotes/authors/s/steve_martin.html>  - "I've got to keep breathing. It'll be my worst business mistake if I don't."
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20090503/cfe4d2b3/attachment.html>

More information about the Ironruby-core mailing list