0
假設我有一個C#Cmdlet
從管道接受值的值:如何測試經由管道供給到C#小命令
[System.Management.Automation.Parameter(Position = 0, Mandatory = true, ValueFromPipeline=true)]
public string Query
{
get { return query; }
set { query = value; }
}
private string query;
我測試:
[TestMethod()]
public void ShouldReturnAnInfoObjectCollection()
{
// arrange
string query = "SELECT si_id, si_name FROM ci_infoobjects WHERE si_id=23";
InfoObjects actual = null;
GetInfoObjects cmdlet = new GetInfoObjects();
cmdlet.Query = query;
// act
IEnumerator result = cmdlet.Invoke().GetEnumerator();
while (result.MoveNext())
{
actual = ((InfoObjects)result.Current);
}
// assert
Assert.IsInstanceOfType(actual, typeof(InfoObjects));
}
如何我會測試這個Cmdlet
的能力,通過管道接受Query
的值嗎?
感謝您的答覆。我明白如何編寫一個接受和處理管道數據的'Cmdlet'。我想知道的是如何爲此編寫單元測試。 – craig
對不起,沒有進攻,看到更新 – Yaser
設置'cmd.Item = asmFile'真的是測試該參數接受管道值的能力嗎? – craig