Sıfır parametresi olarak geçirildiğinde bir özel durumun atıldığını test etmek istediğim bir sınamada garip bir davranışım var. Ben testi zaman NUnit aldığım:NUnit, ExpectedException ve getiri dönüşü ile garip davranış
System.ArgumentNullException was expected
-- Exception doesn't have a stack trace --
Benim testi:
[Test]
[ExpectedException(typeof(ArgumentNullException))]
public void Should_not_retrieve_any_fields_when_file_is_null()
{
_creator.CreateFields(null);
}
My uygulaması:
public IEnumerable<ImportField> CreateFields(HttpPostedFileBase file)
{
if (file == null) throw new ArgumentNullException("file");
using (var reader = new StreamReader(file.InputStream))
{
var firstLine = reader.ReadLine();
var columns = firstLine.Split(new[] { ',' });
for (var i = 0; i < columns.Length; i++)
{
yield return new ImportField(columns[i], i);
}
}
}
bu davranışa mantıklı bir açıklaması var mıdır ve ben yapmalıdır benim uygulama farklı mı?
+1 güzel yakalamak !! – sll