Rust makes it so easy to add assertions that it's well worth doing IMHO, and the assertions make it easy to detect corner cases such as with lengths, collections, comparisons, unexpected inputs, etc.
Rust comes with a handful of assertions, and there are crates that provide many more, as well as runtime equivalents for function input validation. I wrote the "assertables" crate to help with these: https://github.com/sixarm/assertables-rust-crate