我對此很陌生,所以毫無疑問,我正在做一些愚蠢的事情。創建我的第一個模擬對象時出錯
我想創建一個模擬對象:
mockCurrencyConversion = mocks.NewMock<ICurrencyConversion>();
,並收到此錯誤:
The non-generic method 'NMock2.Mockery.NewMock(System.Type)' cannot be used with type arguments
ICurrencyConversion:
public interface ICurrencyConversion
{
decimal convertCurrency(string fromCurrency, string toCurrency, decimal amount);
int addNumbers(int i, int j);
decimal getRate(CurrencyRateResponse rates, string fromCurrency);
CurrencyRateResponse getCurrencyRates();
HttpWebRequest GetWebRequest(string formattedUri);
}
我的測試代碼:
[TestFixture]
public class WhygoTest
{
private Mockery mocks;
private ICurrencyConversion mockCurrencyConversion;
[SetUp]
public void SetUp()
{
mocks = new Mockery();
mockCurrencyConversion = mocks.NewMock<ICurrencyConversion>();
}
[Test]
public void MyAddTest()
{
var cc = new CurrencyConversion();
Assert.AreEqual(cc.addNumbers(1, 2), 3);
}
}
錯誤似乎很清楚,我!它說你不能將類型參數傳遞給該方法,而是它需要一個類型爲「System.Type」的參數。你嘗試過嗎? – 2012-02-14 10:07:27