MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / topology_save_load_roundtrip

Function topology_save_load_roundtrip

nodedb-cluster/src/catalog/ops.rs:97–124  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

95
96 #[test]
97 fn topology_save_load_roundtrip() {
98 let (_dir, catalog) = temp_catalog();
99
100 let mut topo = ClusterTopology::new();
101 topo.add_node(NodeInfo::new(
102 1,
103 "10.0.0.1:9400".parse().unwrap(),
104 NodeState::Active,
105 ));
106 topo.add_node(NodeInfo::new(
107 2,
108 "10.0.0.2:9400".parse().unwrap(),
109 NodeState::Active,
110 ));
111 topo.add_node(NodeInfo::new(
112 3,
113 "10.0.0.3:9400".parse().unwrap(),
114 NodeState::Joining,
115 ));
116
117 catalog.save_topology(&topo).unwrap();
118 let loaded = catalog.load_topology().unwrap().unwrap();
119
120 assert_eq!(loaded.node_count(), 3);
121 assert_eq!(loaded.version(), 3);
122 assert_eq!(loaded.active_nodes().len(), 2);
123 assert_eq!(loaded.get_node(1).unwrap().addr, "10.0.0.1:9400");
124 }
125
126 #[test]
127 fn routing_save_load_roundtrip() {

Callers

nothing calls this directly

Calls 5

save_topologyMethod · 0.80
load_topologyMethod · 0.80
temp_catalogFunction · 0.70
add_nodeMethod · 0.45
parseMethod · 0.45

Tested by

no test coverage detected