From 942eaa7ffcebad5592bf6865ef8c9e8959ec5b79 Mon Sep 17 00:00:00 2001 From: cyqsimon <28627918+cyqsimon@users.noreply.github.com> Date: Fri, 11 Feb 2022 09:55:47 +0800 Subject: [PATCH] Add negative example for `Result::and_then` --- library/core/src/result.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/library/core/src/result.rs b/library/core/src/result.rs index bd7333a33e1..58d58ff0f72 100644 --- a/library/core/src/result.rs +++ b/library/core/src/result.rs @@ -1293,10 +1293,14 @@ impl Result { /// Often used to chain fallible operations that may return [`Err`]. /// /// ``` - /// use std::path::Path; + /// use std::{io::ErrorKind, path::Path}; /// /// let root_modified_time = Path::new("/").metadata().and_then(|md| md.modified()); - /// assert!(root_modified_time.is_ok()) + /// assert!(root_modified_time.is_ok()); + /// + /// let should_fail = Path::new("/bad/path").metadata().and_then(|md| md.modified()); + /// assert!(should_fail.is_err()); + /// assert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound); /// ``` #[inline] #[stable(feature = "rust1", since = "1.0.0")]