I have the following extension methods:метод расширения не бросает исключение, как и ожидалось
public static T ToObject<T>(this DataRow row) where T : new()
{
if (row == null) throw new ArgumentNullException("row");
// do something
}
public static IEnumerable<T> ToObject<T>(this DataTable table) where T : new()
{
if (table == null) throw new ArgumentNullException("table");
// do something
}
и соответствующие тесты:
[TestMethod]
[ExpectedException(typeof(ArgumentNullException))]
public void NullDataRow()
{
// Arrange
DataRow row = null;
// Act
row.ToObject<SomeData>();
}
[TestMethod]
[ExpectedException(typeof(ArgumentNullException))]
public void NullDataTable()
{
// Arrange
DataTable table = null;
// Act
table.ToObject<SomeData>();
}
The DataRow test пассы (он бросает ArgumentNullException
нормально), а DataTable one нет (Безразлично 'хит метод или ничего не бросать).
У меня нет абсолютно никакой идеи, почему тест DataTable не работает (и DataRow - это нормально!).
(сначала я думал, что это была ошибка в моей Visual Studio, но the CI service that I use accused the same)
Черт, это делает весь смысл. Я полностью забыл о отсроченном исполнении. Возвращайся сразу же. – talles