2012-08-24 66 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; 
     }; 
}