MCPcopy Create free account
hub / github.com/bootc-dev/bootc / test_add_or_modify

Function test_add_or_modify

crates/kernel_cmdline/src/bytes.rs:917–947  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

915
916 #[test]
917 fn test_add_or_modify() {
918 let mut kargs = Cmdline::from(b"foo=bar");
919
920 // add new
921 assert!(matches!(kargs.add_or_modify(&param("baz")), Action::Added));
922 let mut iter = kargs.iter();
923 assert_eq!(iter.next(), Some(param("foo=bar")));
924 assert_eq!(iter.next(), Some(param("baz")));
925 assert_eq!(iter.next(), None);
926
927 // modify existing
928 assert!(matches!(
929 kargs.add_or_modify(&param("foo=fuz")),
930 Action::Modified
931 ));
932 iter = kargs.iter();
933 assert_eq!(iter.next(), Some(param("foo=fuz")));
934 assert_eq!(iter.next(), Some(param("baz")));
935 assert_eq!(iter.next(), None);
936
937 // already exists with same value returns false and doesn't
938 // modify anything
939 assert!(matches!(
940 kargs.add_or_modify(&param("foo=fuz")),
941 Action::Existed
942 ));
943 iter = kargs.iter();
944 assert_eq!(iter.next(), Some(param("foo=fuz")));
945 assert_eq!(iter.next(), Some(param("baz")));
946 assert_eq!(iter.next(), None);
947 }
948
949 #[test]
950 fn test_add_or_modify_empty_cmdline() {

Callers

nothing calls this directly

Calls 1

iterMethod · 0.45

Tested by

no test coverage detected