<PackageReference Include="NUnit" Version="3.0.0-alpha-3" />

ParameterDataProvider

ParameterDataProvider supplies individual argument _values for single parameters using attributes derived from DataAttribute.
using NUnit.Framework.Interfaces; using System.Collections; using System.Collections.Generic; using System.Reflection; namespace NUnit.Framework.Internal.Builders { public class ParameterDataProvider : IParameterDataProvider { public bool HasDataFor(ParameterInfo parameter) { return parameter.IsDefined(typeof(IParameterDataSource), false); } public IEnumerable GetDataFor(ParameterInfo parameter) { List<object> list = new List<object>(); object[] customAttributes = parameter.GetCustomAttributes(typeof(IParameterDataSource), false); for (int i = 0; i < customAttributes.Length; i++) { IParameterDataSource parameterDataSource = (IParameterDataSource)customAttributes[i]; foreach (object datum in parameterDataSource.GetData(parameter)) { list.Add(datum); } } return list; } } }