Skip to content

Commit d572cd8

Browse files
committed
add test
1 parent 75bec95 commit d572cd8

File tree

1 file changed

+57
-0
lines changed

1 file changed

+57
-0
lines changed

crates/rpc/rpc-types/tests/state_update.rs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ fn preconfirmed_state_update() {
6363
}
6464
}
6565
);
66+
assert!(state_diff.migrated_compiled_classes.is_none());
6667

6768
let serialized = serde_json::to_value(&state_update).unwrap();
6869
similar_asserts::assert_eq!(serialized, json);
@@ -135,3 +136,59 @@ fn confirmed_state_update() {
135136
let serialized = serde_json::to_value(&state_update).unwrap();
136137
similar_asserts::assert_eq!(serialized, json);
137138
}
139+
140+
#[test]
141+
fn v0_10_0_confirmed_state_update() {
142+
let json = fixtures::test_data::<Value>("v0.10/state-updates/confirmed_state_update.json");
143+
144+
let state_update: ConfirmedStateUpdate = serde_json::from_value(json.clone()).unwrap();
145+
let as_enum: StateUpdate = serde_json::from_value(json.clone()).unwrap();
146+
assert_matches!(as_enum, StateUpdate::Update(as_enum_update) => {
147+
similar_asserts::assert_eq!(as_enum_update, state_update);
148+
});
149+
150+
let ConfirmedStateUpdate { block_hash, new_root, old_root, ref state_diff } = state_update;
151+
assert_eq!(
152+
block_hash,
153+
felt!("0x1935ec0e5c7758fdc11a78ed9d4cadd4225eab826aabd98fe2d04b45ca4c150")
154+
);
155+
assert_eq!(
156+
old_root,
157+
felt!("0x484d8010568613b1878e03085989536d9112d89e2979297f0fbd741a3f73138")
158+
);
159+
assert_eq!(
160+
new_root,
161+
felt!("0x7e72ca880e4fa1f4987257d90b2642860a4574a03b79ac830f6fb5968520977")
162+
);
163+
assert!(state_diff.deprecated_declared_classes.is_empty());
164+
assert!(state_diff.replaced_classes.is_empty());
165+
assert!(state_diff.declared_classes.is_empty());
166+
assert!(state_diff.deployed_contracts.is_empty());
167+
assert_eq!(
168+
state_diff.nonces,
169+
map! {
170+
address!("0x662776dac110a170767d83da4f1d8fae022df7aa8a78252eb9c501c68d49604"), felt!("0x1bb63"),
171+
}
172+
);
173+
assert_eq!(
174+
state_diff.storage_diffs,
175+
map! {
176+
address!("0x18469ed2d40a016a602371173c7287e25f85cb6abb6fc0866d3c444e2837603"), map! {
177+
felt!("0x6d410d47be5497b0dafef14e24c8767731a6e50126ff8fa99f25a0d0ee02788"), felt!("0x1"),
178+
},
179+
address!("0x377c2d65debb3978ea81904e7d59740da1f07412e30d01c5ded1c5d6f1ddc43"), map! {
180+
felt!("0x484b46148d37383593029fa3b4c09a5e0e3cb66bbcf5fc66529fa452ccc6e34"), felt!("0x8"),
181+
felt!("0x3ee4ba0f59886159d92a35f96ded219dd7f69c30953f9b68d333f10a27e312b"), felt!("0x18469ed2d40a016a602371173c7287e25f85cb6abb6fc0866d3c444e2837603"),
182+
}
183+
}
184+
);
185+
assert_eq!(
186+
state_diff.migrated_compiled_classes,
187+
Some(map! {
188+
felt!("0x4ac055f14361bb6f7bf4b9af6e96ca68825e6037e9bdf87ea0b2c641dea73ae"), felt!("0x17f3b8f7225a160ec0542ea5c44ee876f2b132e7dee00ec36f2422d8155a4e4"),
189+
})
190+
);
191+
192+
let serialized = serde_json::to_value(&state_update).unwrap();
193+
similar_asserts::assert_eq!(serialized, json);
194+
}

0 commit comments

Comments
 (0)