【发布时间】:2019-04-24 22:09:54
【问题描述】:
[Theory]
[InlineData("atv,atv,atv,hdm")]
[InlineData("nx9,nx9,atv,nx9,nx9,nx9")]
[InlineData("nx9,nx9,atv,nx9,nx9,nx9,nx9")]
public void Buy3Pay2(string input)
{
var co = new Checkout(rules);
var stock = input.Split(',');
foreach (var item in stock)
{
var product = products.SingleOrDefault(p => string.Compare(item, p.SKU, true) == 0);
Item realItem = new Item() {
Name = product.Name,
SKU = product.SKU,
Price = product.Price
};
realItem.ID = Guid.NewGuid().ToString();
co.Scan(realItem);
}
var total = co.Total();
total.Should().Be(249.00M);
//total.Should().Be(531.00M); for the second input
//total.Should().Be(698.00M); for the 3rd input
}
如何根据不同的 InlineData 输入设置预期结果?
【问题讨论】:
-
将其(期望)也添加为输入并将其用于断言