| 210 | |
| 211 | #[test] |
| 212 | fn test_edge_roundtrip() { |
| 213 | let original = make_edge(EdgeFlags::BLOCK | EdgeFlags::PARENT, 42, 100, 7); |
| 214 | let edge = original.to_edge(); |
| 215 | |
| 216 | assert_eq!(edge.flag, EdgeFlags::BLOCK | EdgeFlags::PARENT); |
| 217 | assert_eq!(edge.dest.change, NodeId::new(42)); |
| 218 | assert_eq!(edge.dest.pos, ChangePosition::new(100)); |
| 219 | assert_eq!(edge.introduced_by, NodeId::new(7)); |
| 220 | |
| 221 | // Convert back |
| 222 | let serialized = SerializedGraphEdge::from(edge); |
| 223 | assert_eq!(serialized.flag(), original.flag()); |
| 224 | assert_eq!(serialized.dest(), original.dest()); |
| 225 | assert_eq!(serialized.introduced_by(), original.introduced_by()); |
| 226 | } |
| 227 | |
| 228 | // Span Key Encoding Tests |
| 229 | |