Рассмотрим следующий тест:
public void FooTest(decimal? val)
{
Check.That(true).IsTrue();
}
Я хочу запустить этот тест с экстремальными значениями (т.е. MaxValue
и MinValue
).
[TestCase(decimal.MaxValue)]
Это приводит к следующей ошибке: Аргумент атрибута должен быть константным выражением, выражением типаof или выражением создания массива типа параметра атрибута
[TestCase(79228162514264337593543935)]
Теперь я получаю это: интегральная константа слишком велика
Последняя отчаянная попытка:
[TestCase(79228162514264337593543935M)]
Очевидно, я получаю это из-за приведения: Аргумент атрибута должен быть константным выражением, выражением типаof или выражением создания массива типа параметра атрибута
Как написать unit test с decimal.MaxValue
в качестве параметра? Я мог написать конкретный тест для этого проблемного случая, но я хотел бы знать, есть ли способ написать TestCase
, как это.