• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #[test]
insert()2 fn 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