Rust में यूनिट-टेस्ट कैसे लिखें जो जाँचे कि panic हुआ?
सभी को नमस्ते! मैंने अभी Rust सीखना शुरू किया है और टेस्ट लिखने की कोशिश कर रहा हूँ। मेरे पास एक फंक्शन है जो कुछ शर्तों पर panic! करना चाहिए। उदाहरण के लिए, मैंने एक सरल डिवीज़न फंक्शन लिखा है जो शून्य से भाग देने पर panic करता है:
```rust
fn divide(a: i32, b: i32) -> i32 {
if b == 0 {
panic!("division by zero");
}
a / b
}
```
अब मैं एक यूनिट-टेस्ट लिखना चाहता हूँ जो जाँचे कि `divide(10, 0)` कॉल करने पर वास्तव में panic होता है। लेकिन मुझे समझ नहीं आ रहा कि इसे सही तरीके से कैसे करूँ। अगर मैं बस यह लिखूँ:
```rust
#[test]
fn test_divide_by_zero() {
divide(10, 0);
}
```
तो टेस्ट बस एरर के साथ फेल हो जाएगा, और cargo test FAILED दिखाएगा। यह वह नहीं है जो मुझे चाहिए — मैं चाहता हूँ कि टेस्ट सफल माना जाए अगर panic हुआ, और फेल माना जाए अगर panic नहीं हुआ।
मैंने सुना है कि Rust में एक `#[should_panic]` एट्रीब्यूट है, लेकिन मुझे यकीन नहीं है कि इसका उपयोग कैसे करूँ। साथ ही, मुझे यह भी जानना है: क्या मैं सिर्फ panic के तथ्य की जाँच नहीं कर सकता, बल्कि इसके संदेश की भी जाँच कर सकता हूँ?
अभी तक कोई उत्तर नहीं।
लॉग इन करें उत्तर देने के लिए
ब्लॉग
TypeScript प्रोजेक्ट के लिए गुणवत्तापूर्ण दस्तावेज़ीकरण लिखना: एक संपूर्ण गाइड
JSX.Element, ReactNode, ReactElement: TypeScript में कब क्या उपयोग करें?
Go के लिए Chaos Engineering: एप्लिकेशन को तोड़ना, बचाने के लिए
2025 में Swift: शुरुआती डेवलपर्स के लिए नई चीज़ें