Rustfmt
This commit is contained in:
@@ -15,17 +15,10 @@ fn diamond() {
|
||||
#[test]
|
||||
fn paper() {
|
||||
// example from the paper:
|
||||
let graph = TestGraph::new(6, &[
|
||||
(6, 5),
|
||||
(6, 4),
|
||||
(5, 1),
|
||||
(4, 2),
|
||||
(4, 3),
|
||||
(1, 2),
|
||||
(2, 3),
|
||||
(3, 2),
|
||||
(2, 1),
|
||||
]);
|
||||
let graph = TestGraph::new(
|
||||
6,
|
||||
&[(6, 5), (6, 4), (5, 1), (4, 2), (4, 3), (1, 2), (2, 3), (3, 2), (2, 1)],
|
||||
);
|
||||
|
||||
let d = dominators(&graph);
|
||||
assert_eq!(d.immediate_dominator(0), None); // <-- note that 0 is not in graph
|
||||
@@ -40,19 +33,10 @@ fn paper() {
|
||||
#[test]
|
||||
fn paper_slt() {
|
||||
// example from the paper:
|
||||
let graph = TestGraph::new(1, &[
|
||||
(1, 2),
|
||||
(1, 3),
|
||||
(2, 3),
|
||||
(2, 7),
|
||||
(3, 4),
|
||||
(3, 6),
|
||||
(4, 5),
|
||||
(5, 4),
|
||||
(6, 7),
|
||||
(7, 8),
|
||||
(8, 5),
|
||||
]);
|
||||
let graph = TestGraph::new(
|
||||
1,
|
||||
&[(1, 2), (1, 3), (2, 3), (2, 7), (3, 4), (3, 6), (4, 5), (5, 4), (6, 7), (7, 8), (8, 5)],
|
||||
);
|
||||
|
||||
dominators(&graph);
|
||||
}
|
||||
@@ -69,21 +53,24 @@ fn immediate_dominator() {
|
||||
|
||||
#[test]
|
||||
fn transitive_dominator() {
|
||||
let graph = TestGraph::new(0, &[
|
||||
// First tree branch.
|
||||
(0, 1),
|
||||
(1, 2),
|
||||
(2, 3),
|
||||
(3, 4),
|
||||
// Second tree branch.
|
||||
(1, 5),
|
||||
(5, 6),
|
||||
// Third tree branch.
|
||||
(0, 7),
|
||||
// These links make 0 the dominator for 2 and 3.
|
||||
(7, 2),
|
||||
(5, 3),
|
||||
]);
|
||||
let graph = TestGraph::new(
|
||||
0,
|
||||
&[
|
||||
// First tree branch.
|
||||
(0, 1),
|
||||
(1, 2),
|
||||
(2, 3),
|
||||
(3, 4),
|
||||
// Second tree branch.
|
||||
(1, 5),
|
||||
(5, 6),
|
||||
// Third tree branch.
|
||||
(0, 7),
|
||||
// These links make 0 the dominator for 2 and 3.
|
||||
(7, 2),
|
||||
(5, 3),
|
||||
],
|
||||
);
|
||||
|
||||
let d = dominators(&graph);
|
||||
assert_eq!(d.immediate_dominator(2), Some(0));
|
||||
|
||||
@@ -110,10 +110,13 @@ fn each_adjacent_from_a() {
|
||||
#[test]
|
||||
fn each_adjacent_from_b() {
|
||||
let graph = create_graph();
|
||||
test_adjacent_edges(&graph, NodeIndex(1), "B", &[("FB", "F"), ("AB", "A")], &[
|
||||
("BD", "D"),
|
||||
("BC", "C"),
|
||||
]);
|
||||
test_adjacent_edges(
|
||||
&graph,
|
||||
NodeIndex(1),
|
||||
"B",
|
||||
&[("FB", "F"), ("AB", "A")],
|
||||
&[("BD", "D"), ("BC", "C")],
|
||||
);
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
@@ -326,46 +326,49 @@ fn test_bug_max_leak_minimised() {
|
||||
|
||||
#[test]
|
||||
fn test_bug_max_leak() {
|
||||
let graph = TestGraph::new(8, &[
|
||||
(0, 0),
|
||||
(0, 18),
|
||||
(0, 19),
|
||||
(0, 1),
|
||||
(0, 2),
|
||||
(0, 7),
|
||||
(0, 8),
|
||||
(0, 23),
|
||||
(18, 0),
|
||||
(18, 12),
|
||||
(19, 0),
|
||||
(19, 25),
|
||||
(12, 18),
|
||||
(12, 3),
|
||||
(12, 5),
|
||||
(3, 12),
|
||||
(3, 21),
|
||||
(3, 22),
|
||||
(5, 13),
|
||||
(21, 3),
|
||||
(22, 3),
|
||||
(13, 5),
|
||||
(13, 4),
|
||||
(4, 13),
|
||||
(4, 0),
|
||||
(2, 11),
|
||||
(7, 6),
|
||||
(6, 20),
|
||||
(20, 6),
|
||||
(8, 17),
|
||||
(17, 9),
|
||||
(9, 16),
|
||||
(16, 26),
|
||||
(26, 15),
|
||||
(15, 10),
|
||||
(10, 14),
|
||||
(14, 27),
|
||||
(23, 24),
|
||||
]);
|
||||
let graph = TestGraph::new(
|
||||
8,
|
||||
&[
|
||||
(0, 0),
|
||||
(0, 18),
|
||||
(0, 19),
|
||||
(0, 1),
|
||||
(0, 2),
|
||||
(0, 7),
|
||||
(0, 8),
|
||||
(0, 23),
|
||||
(18, 0),
|
||||
(18, 12),
|
||||
(19, 0),
|
||||
(19, 25),
|
||||
(12, 18),
|
||||
(12, 3),
|
||||
(12, 5),
|
||||
(3, 12),
|
||||
(3, 21),
|
||||
(3, 22),
|
||||
(5, 13),
|
||||
(21, 3),
|
||||
(22, 3),
|
||||
(13, 5),
|
||||
(13, 4),
|
||||
(4, 13),
|
||||
(4, 0),
|
||||
(2, 11),
|
||||
(7, 6),
|
||||
(6, 20),
|
||||
(20, 6),
|
||||
(8, 17),
|
||||
(17, 9),
|
||||
(9, 16),
|
||||
(16, 26),
|
||||
(26, 15),
|
||||
(15, 10),
|
||||
(10, 14),
|
||||
(14, 27),
|
||||
(23, 24),
|
||||
],
|
||||
);
|
||||
let sccs: MaxReachedSccs = Sccs::new_with_annotation(&graph, |w| match w {
|
||||
22 => MaxReached(1),
|
||||
24 => MaxReached(2),
|
||||
|
||||
Reference in New Issue
Block a user