2012-08-24 46 views
5

我有一个静态方法,在我的遗留(不可测试)dll中有ref参数。我正在尝试为调用此方法的类编写单元测试。使用Microsoft Fakes来填充参考参数的方法

public static class Branding 
{ 
    ... 
    ... 

    static public bool GetBranding(Int32 providerId, 
     Int32 employerId, 
     string brandingElement, 
     ref string brandingValue) 

    ... 
    ... 
} 

我需要帮助写一个垫片声明该呼叫

ShimBranding.GetBrandingInt32Int32StringStringRef = 
    (providerId, employerId, element, { ====> WHAT GOES HERE <===== }) 
    => 
    true; 

谢谢!

回答

16
using (ShimsContext.Create()) 
{ 
    ShimBranding.GetBrandingInt32Int32StringStringRef = 
     (int providerId, int employerId, string brandingElement, ref string brandingValue) => 
     { 
      brandingValue = "Blah"; 
      return true; 
     }; 
}