MCPcopy Create free account
hub / github.com/base/triedb / test_branch_node_encode

Function test_branch_node_encode

src/node.rs:1053–1219  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1051
1052 #[test]
1053 fn test_branch_node_encode() {
1054 let mut node = Node::new_branch(&RawPath::new()).expect("can create node");
1055 node.set_child(
1056 0,
1057 Pointer::new(
1058 0.into(),
1059 RlpNode::word_rlp(&b256!(
1060 "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
1061 )),
1062 ),
1063 )
1064 .expect("should set child");
1065 node.set_child(
1066 15,
1067 Pointer::new(
1068 15.into(),
1069 RlpNode::word_rlp(&b256!(
1070 "0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
1071 )),
1072 ),
1073 )
1074 .expect("should set child");
1075 let mut bytes = vec![];
1076 node.encode(&mut bytes);
1077 assert_eq!(bytes, hex!("0xf851a01234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef8080808080808080808080808080a0deadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef80"));
1078
1079 let mut node = Node::new_branch(&RawPath::new()).expect("can create node");
1080 node.set_child(
1081 3,
1082 Pointer::new(
1083 0.into(),
1084 RlpNode::word_rlp(&b256!(
1085 "0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef"
1086 )),
1087 ),
1088 )
1089 .expect("should set child");
1090 node.set_child(
1091 7,
1092 Pointer::new(
1093 15.into(),
1094 RlpNode::word_rlp(&b256!(
1095 "0xdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeefdeadbeef"
1096 )),
1097 ),
1098 )
1099 .expect("should set child");
1100 node.set_child(
1101 13,
1102 Pointer::new(
1103 13.into(),
1104 RlpNode::word_rlp(&b256!(
1105 "0xf00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f00f"
1106 )),
1107 ),
1108 )
1109 .expect("should set child");
1110 let mut bytes = vec![];

Callers

nothing calls this directly

Calls 3

set_childMethod · 0.80
encodeMethod · 0.80
to_rlp_nodeMethod · 0.80

Tested by

no test coverage detected