Avatar ·

Rust में यूनिट-टेस्ट कैसे लिखें जो जाँचे कि फ़ंक्शन पैनिक करता है?

सभी को नमस्कार! मैंने अभी Rust सीखना शुरू किया है और अपनी लाइब्रेरी के लिए टेस्ट लिखने की कोशिश कर रहा हूँ। मेरे पास एक फ़ंक्शन है जो कुछ शर्तों पर पैनिक करना चाहिए। उदाहरण के लिए, मैंने एक सरल कैलकुलेटर लिखा है, और divide फ़ंक्शन को शून्य से भाग देने पर पैनिक करना चाहिए। यहाँ मेरा कोड है: ```rust fn divide(a: i32, b: i32) -> i32 { if b == 0 { panic!("Division by zero!"); } a / b } ``` मैं एक यूनिट-टेस्ट लिखना चाहता हूँ जो जाँचे कि `divide(10, 0)` कॉल करने पर वास्तव में पैनिक होता है। मैंने `#[should_panic]` का उपयोग करने की कोशिश की, लेकिन मुझे यकीन नहीं है कि मैं इसे सही कर रहा हूँ। इसके अलावा, मैंने सुना है कि पैनिक को मैसेज के साथ जाँचने के और भी उन्नत तरीके हैं। कृपया बताएँ कि Rust में ऐसे टेस्ट सही तरीके से कैसे लिखें? क्या कोई best practices या वैकल्पिक तरीके हैं? पहले से धन्यवाद! <<>>

मुख्य तरीका: #[should_panic] एट्रिब्यूट

सबसे सरल और सामान्य तरीका यह जाँचने का है कि फ़ंक्शन पैनिक करता है या नहीं, #[should_panic] एट्रिब्यूट का उपयोग करना है।