1#[test] 2fn insert() { 3 let mut raw = clap_lex::RawArgs::new(["bin", "a", "b", "c"]); 4 let mut cursor = raw.cursor(); 5 6 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("bin"))); 7 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("a"))); 8 raw.insert(&cursor, ["1", "2", "3"]); 9 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("1"))); 10 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("2"))); 11 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("3"))); 12 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("b"))); 13 assert_eq!(raw.next_os(&mut cursor), Some(std::ffi::OsStr::new("c"))); 14 15 let mut cursor = raw.cursor(); 16 let rest = raw 17 .remaining(&mut cursor) 18 .map(|s| s.to_string_lossy()) 19 .collect::<Vec<_>>(); 20 assert_eq!(rest, vec!["bin", "a", "1", "2", "3", "b", "c"]); 21} 22