2
我有一個擴展方法,斷言給定的值是列表中的值之一。如何建立一個新的NUnit約束
public static void IsEither<T>(this T value, params T[] allowedValues)
{
EqualConstraint isInAllowed = null;
foreach (var allowed in allowedValues)
isInAllowed = isInAllowed == null ?
Is.EqualTo(allowed) : isInAllowed.Or.EqualTo(allowed);
Assert.That(value, isInAllowed);
}
我不知道有沒有這樣做,特別是使用NUnit的ConstraintBuilder,ConstraintExpression的任何其他更好/更優雅的方式,ConstraintOperator等