Avatar ·

Comment écrire un test unitaire en Rust qui vérifie qu'une fonction panique ?

Bonjour à tous ! Je commence tout juste à apprendre Rust et j'essaie d'écrire des tests pour ma bibliothèque. J'ai une fonction qui, sous certaines conditions, doit déclencher une panique. Par exemple, j'ai écrit une simple calculatrice, et la fonction de division doit paniquer lorsqu'on tente de diviser par zéro. Voici mon code : ```rust fn divide(a: i32, b: i32) -> i32 { if b == 0 { panic!("Division by zero!"); } a / b } ``` Je veux écrire un test unitaire qui vérifie que l'appel à `divide(10, 0)` provoque bien une panique. J'ai essayé d'utiliser `#[should_panic]`, mais je ne suis pas sûr de le faire correctement. De plus, j'ai entendu dire qu'il existe des méthodes plus avancées pour vérifier la panique avec un message. Pouvez-vous m'indiquer comment écrire correctement de tels tests en Rust ? Existe-t-il des best practices ou des approches alternatives ? Merci d'avance pour votre aide ! <<>>

Méthode principale : l'attribut #[should_panic]

La façon la plus simple et la plus courante de vérifier qu'une fonction