我正在尝试使用 Shim 来测试我在这个名为 DataSyncCore 的类中的私有方法之一。抱歉,如果这太微不足道了,因为我是 shim 的新手并且无法弄清楚为什么这会给我一个错误,说“属性或索引器 GetEnvironmentString 不能在这种情况下使用,因为它缺少访问器。如何解决这个问题?
//Method to be tested inside DataSyncCore Class
private Environments GetEnvironment(string env)
{
string environment = env.ToLower();
switch (environment)
{
case "dev":
return Environments.Dev;
case "qc":
return Environments.QC;
case "uat":
return Environments.UAT;
case "prod":
return Environments.PROD;
default:
return Environments.Dev;
}
}
这是我的单元测试:
[TestMethod]
public void DataSyncCore_GetsEnvironment_Succeeded()
{
using (ShimsContext.Create())
{
var core = new ShimDataSyncCore()
{
GetEnvironmentString = (dev) =>
{
return Environments.Dev;
}
};
Assert.AreEqual(Environments.Dev, core.GetEnvironmentString("dev"));
}
}