代码之家  ›  专栏  ›  技术社区  ›  mwjackson

在平行前臂内的对象上模拟断言?

  •  2
  • mwjackson  · 技术社区  · 14 年前

    当通过一个闭包在parallel.foreach中访问模拟对象时,我们知道如何断言该对象吗?我假设因为每次调用都在不同的线程上,所以Rhino Mocks会丢失对对象的跟踪?

    Pseudocode:

    var someStub = MockRepository.GenerateStub()
    
    Parallel.Foreach(collectionOfInts, anInt => someStub.DoSomething(anInt))
    
    someStub.AssertWasCalled(s => s.DoSomething, Repeat.Five.Times)
    

    此测试将返回一个期望冲突,期望存根被调用5次,但实际被调用0次。

    有什么办法可以告诉lambda跟踪线程本地存根对象吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   mwjackson    14 年前

    好吧,作为一个临时的度量,我们刚刚抽象了对parallel.foreach的调用,并将其转换为另一个类…