У меня есть classX:Weird блок Nunit Неудачный тест
Sub New (ByVal item_line_no As String, ByVal ITEM_TEXT As String)
' check to ensure that the parameters do not exceed the file template limits
Select Case item_line_no.Length
Case Is > m_item_line_no_capacity
Throw New ArgumentOutOfRangeException(item_line_no, "Line No exceeds 4 characters")
Case Else
Me.m_item_line_no = item_line_no
End Select
Select Case item_text.Length
Case Is > m_item_free_text_capacity
Throw New ArgumentOutOfRangeException("Free Text Exceeds 130 characters")
Case Else
Me.m_item_free_text = item_text
End Select
End Sub
и следующие Унти, чтобы проверить одну точку отказа
<ExpectedException(GetType(ArgumentOutOfRangeException), "Line No exceeds 4 characters")> _
<Test()> _
Sub testLineNoExceedsMaxLength()
Dim it As New X("aaaaa", "Test")
End Sub
Когда я запускаю тест, я ожидаю, что сообщение будет отправлено в исключение «Линия не превышает 4 символов»
Однако тестовый модуль выдает следующее сообщение
RecordTests.testLineNoExceedsMaxLength : FailedExpected exception message: Line No exceeds 4 characters
got: Line No exceeds 4 characters
Parameter name: aaaaa
Я думаю, что что-то простое, но это сводит меня с ума.
Примечание: в декларации ExpectedException я получаю устаревшую предупреждение о том, что вместо
<ExpectedException(GetType(ArgumentOutOfRangeException), "Line No exceeds 4 characters")>
должно быть
<ExpectedException(GetType(ArgumentOutOfRangeException), ExpectedException="Line No exceeds 4 characters")>
Однако это бросает ExpectedException не объявлена ошибка!