2012-02-20 6 views
5

の代理イベントを発生させると、私は代理イベントを発生させたい。私はこれをどのようにして行うのですか?テストする私のmoqの設定でMoq

public class SomeClassToBeTested 
{ 
    public void SomeMethodToTest() 
    { 
     var event = new ThreadStart(someOtherClass.SomeMethod); 
     someOtherClass.SomeDelegate += new SomeOtherClass.someDelegate(TriggerMethod); 
    } 

    public void TriggerMethod() 
    { 
     // do something 
    } 
} 

Testクラス:

[Test] 
public void SomeTest() 
{ 
    this.moqSomeOtherClass.Setup(fd => fd.SomeMethod()) 
         .Raises(fd => // trigger delgate); 
} 

答えて

3

試してみてください。

[Test] 
public void SomeTest() 
{ 
    this.moqSomeOtherClass.Setup(fd => fd.SomeMethod()) 
         .Raises(fd => fd.SomeDelegate +=null); 
}