C# 如何在单元测试中设置InlineAutoData标记中的布尔数组?
我想测试一种方法。测试此方法需要一个布尔数组。如何在InlineAutoData标记中设置此数组?我的代码示例如下C# 如何在单元测试中设置InlineAutoData标记中的布尔数组?,c#,unit-testing,autofixture,C#,Unit Testing,Autofixture,我想测试一种方法。测试此方法需要一个布尔数组。如何在InlineAutoData标记中设置此数组?我的代码示例如下 [Theory] [InlineAutoData([true,false,false])] public void ToEntityTest(bool[] groups, HeadModel model) { model.Groups = new HeadGroupsModel() { Grou
[Theory]
[InlineAutoData([true,false,false])]
public void ToEntityTest(bool[] groups, HeadModel model)
{
model.Groups = new HeadGroupsModel()
{
Groups = groups
};
var headModel = model.ToEntity().ToModel().ToEntity();
headModel.Should().BeEquivalentTo(model.ToEntity());
}
它不起作用。组是自动创建的,而不是我设置的。
感谢您的关注和支持。使用参数参数
[Theory]
[InlineData(true,false,false)]
public void ToEntityTest(params bool[] groups)
{
var model = new HeadModel
{
Groups = new HeadGroupsModel { Groups = groups }
}
var headModel = model.ToEntity().ToModel().ToEntity();
headModel.Should().BeEquivalentTo(model.ToEntity());
}
使用参数参数
[Theory]
[InlineData(true,false,false)]
public void ToEntityTest(params bool[] groups)
{
var model = new HeadModel
{
Groups = new HeadGroupsModel { Groups = groups }
}
var headModel = model.ToEntity().ToModel().ToEntity();
headModel.Should().BeEquivalentTo(model.ToEntity());
}
您需要创建一个适当的数组:
[Theory]
[InlineAutoData(new bool[true,false,true])]
public void ToEntityTest(bool[] groups, HeadModel model)
{
model.Groups = new HeadGroupsModel()
{
Groups = groups
};
var headModel = model.ToEntity().ToModel().ToEntity();
headModel.Should().BeEquivalentTo(model.ToEntity());
}`
您需要创建一个适当的数组:
[Theory]
[InlineAutoData(new bool[true,false,true])]
public void ToEntityTest(bool[] groups, HeadModel model)
{
model.Groups = new HeadGroupsModel()
{
Groups = groups
};
var headModel = model.ToEntity().ToModel().ToEntity();
headModel.Should().BeEquivalentTo(model.ToEntity());
}`
你能详细说明-什么不按预期工作?组是自动创建的,不是我设置的。你能详细说明-什么不按预期工作?组是自动创建的,不是我设置的