Rust में Tokio के साथ async फंक्शन का सही तरीके से परीक्षण कैसे करें?
नमस्ते! मैंने Rust और Tokio का उपयोग करके async प्रोग्रामिंग सीखना शुरू किया है। मैंने नेटवर्क कार्य के लिए एक सरल मॉड्यूल लिखा है, लेकिन मैं समझ नहीं पा रहा हूँ कि async फंक्शन के लिए सही तरीके से टेस्ट कैसे लिखें।
यहाँ मेरे कोड का उदाहरण है:
```rust
use tokio::time::{sleep, Duration};
pub async fn fetch_data(url: &str) -> Result {
// नेटवर्क रिक्वेस्ट का अनुकरण
sleep(Duration::from_millis(100)).await;
if url.is_empty() {
return Err("URL खाली है".to_string());
}
Ok(format!("{} से डेटा", url))
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_fetch_data() {
let result = fetch_data("https://example.com");
// यहाँ कंपाइलेशन एरर है
}
}
```
जब मैं टेस्ट चलाने की कोशिश करता हूँ, तो कंपाइलर यह एरर देता है: `the trait bound`