Skip to content

Commit d67fd4b

Browse files
committed
test(runtime-graph): derive precompile selectors from source
1 parent bbbb1bf commit d67fd4b

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

scripts/runtime-interaction-graph/test_runtime_interaction_graph.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1103,10 +1103,12 @@ def test_multicurrency_precompile_should_link_imported_erc20_selectors(self):
11031103
entrypoints = {edge["source"] for edge in self.graph.edges
11041104
if edge["kind"] == "enters-function" and edge["target"] == execute["id"]
11051105
and self.graph.nodes[edge["source"]].get("entrypoint_kind") == "precompile-selector"}
1106-
self.assertEqual(len(entrypoints), 11)
11071106
selectors = {self.graph.nodes[entrypoint]["signature"] for entrypoint in entrypoints}
1108-
self.assertTrue({"balanceOf(address)", "transfer(address,uint256)", "transferFrom(address,address,uint256)",
1109-
"mint(address,uint256)", "burn(uint256)"}.issubset(selectors))
1107+
expected = set(graph.generated_selector_enums(
1108+
(MODULE.parents[2] / "runtime/hydradx/src/evm/erc20_currency.rs").read_text())["Function"].values())
1109+
self.assertEqual(selectors, expected)
1110+
self.assertTrue({"balanceOf(address)", "transfer(address,uint256)",
1111+
"transferFrom(address,address,uint256)"}.issubset(selectors))
11101112
self.assertEqual({edge["source"] for edge in self.graph.edges
11111113
if edge["kind"] == "dispatches-evm-selector" and edge["source"] in entrypoints}, entrypoints)
11121114
self.assertFalse(any(edge["source"] == execute["id"] and edge["kind"] == "encodes-evm-selector"

0 commit comments

Comments
 (0)