MemberAutoDataAttribute仅每秒执行一次自动生成值

时间:2016-11-13 14:51:04

标签: xunit xunit.net autofixture

我尝试以这种方式组合成员数据和自动数据属性:

using Xunit;
using Ploeh.AutoFixture.Xunit2;

class MemberAutoDataAttribute : CompositeDataAttribute
{
    public MemberAutoDataAttribute(string memberName)
        : base(
            new MemberDataAttribute(memberName),
            new AutoDataAttribute())
    {
    }
}

这是实现它的测试:

[Theory, MemberAutoData(nameof(CurrentWeatherResponses))]
public void ParseCurrentWeather_WeatherParsed(
    string response,
    Weather expectedWeather,
    TemperatureUnit tempUnit)
{
    // ...
}

这是CurrentWeatherResponses成员:

public static IEnumerable<object[]> CurrentWeatherResponses
{
    get
    {
        yield return
            new object[]
            {
                CurrentWeatherResponse.ToString(),
                new Weather() {}
            };
    }
}

为什么每次测试都会生成所有值,而不仅仅是温度单位?

0 个答案:

没有答案