में अपवादों को अनदेखा करना मेरे पास कुछ ऐसे मामले हैं जहां मुझे परवाह नहीं है कि अपवाद फेंक दिया गया है (जब तक कुछ अपवाद फेंक दिया जाता है)। दुर्भाग्य से,xUnit.net
Assert.Throws<Exception>(someDelegate);
पास नहीं है जब तक कि वास्तव में Exception
का एक उदाहरण (ऐसा नहीं एक व्युत्पन्न वर्ग का एक उदाहरण) फेंक दिया है। मुझे पता है कि मैं
Exception exception = Record.Exception(someDelegate);
Assert.NotNull(exception);
के साथ इच्छित व्यवहार प्राप्त कर सकता हूं लेकिन यह सही नहीं पढ़ता है। क्या मुझे xUnit में कुछ याद आ रहा है जिसमें मेरा व्यवहार है?
[Fact]
public void Throws_exception_and_passes() {
Exception exception = Record.Exception(
() => { throw new InvalidOperationException(); }
);
Assert.NotNull(exception);
}
[Fact]
public void Throws_exception_and_fails() {
Assert.Throws<Exception>(
() => { throw new InvalidOperationException(); }
);
}
पूरी तरह से पाठ के साथ सहमत हैं। बस उस [@ जोन हन्ना 'उत्तर] को जोड़ना चाहता था (http://stackoverflow.com/a/32468935/11635) अब अंतर्निहित' थ्रोसएनी 'का विवरण देता है जो ओपी के वांछित व्यवहार को लागू करता है –
लिंक टूटा हुआ है। xUnit github – mortb