2014-12-01 2 views
0

У меня есть тест, как это:NUnit не может распознать TestCase, когда он содержит Nullable массива

[Test] 
[TestCase(new RequestStatus?[] {RequestStatus.Created, null, RequestStatus.Complete, null})] 
public void MyClass_MyMethod(RequestStatus?[] testCaseRequest) 
{ 
    ... 
} 

Nuint не распознает Nullable массива как TestCase пары. Я получил это:

Аргумент атрибут должен быть константным выражением, TypeOf выражение выражения или создания массива ссылочного типа параметра атрибута

+1

Вы могли бы иметь чтобы посмотреть на использование 'TestCaseSource', как указано здесь: http://stackoverflow.com/questions/19479817/how-do-i-put-new-listint-1-in-an-nunit-testcase и здесь: http: //stackoverflow.com/questions/10687091/passing-a-string-to-attribute-argument-by-calling-method –

+0

Я нашел ответ здесь: http://stackoverflow.com/questions/19479817/how-do-i-put-new-listint-1-in-an-nunit-testcase – Maqq

+0

Nice one :) Рад, что вы решили проблему. –

ответ

0

Вы можете использовать params в качестве аргумента метода:

[TestCase(RequestStatus.Created, null, RequestStatus.Complete, null)] 
public void MyClass_MyMethod(params RequestStatus?[] requestStatus) 
{ 
    // ... 
} 
Смежные вопросы