Skip to content

Commit 40f12dd

Browse files
committed
fix test cleanup: ignore deletion errors and propagate panics properly
Replace assert-based cleanup with ignored deletion results and explicit panic propagation via resume_unwind. This ensures that cleanup failures don't mask test results, and panicked tests properly unwind through the cleanup code. Signed-off-by: Gris Ge <cnfourt@gmail.com>
1 parent f58ebb9 commit 40f12dd

6 files changed

Lines changed: 33 additions & 15 deletions

File tree

src/ip/link/tests/bond.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,10 @@ where
8282
});
8383

8484
// clean up
85-
exec_cmd(&["ip", "link", "del", dummy_name]);
86-
exec_cmd(&["ip", "link", "del", bond_name]);
87-
assert!(result.is_ok())
85+
let _ = exec_cmd(&["ip", "link", "del", dummy_name]);
86+
let _ = exec_cmd(&["ip", "link", "del", bond_name]);
87+
88+
if let Err(e) = result {
89+
std::panic::resume_unwind(e);
90+
}
8891
}

src/ip/link/tests/bridge.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,10 @@ where
196196
});
197197

198198
// clean up
199-
exec_cmd(&["ip", "link", "del", dummy_name]);
200-
exec_cmd(&["ip", "link", "del", br_name]);
201-
assert!(result.is_ok())
199+
let _ = exec_cmd(&["ip", "link", "del", dummy_name]);
200+
let _ = exec_cmd(&["ip", "link", "del", br_name]);
201+
202+
if let Err(e) = result {
203+
std::panic::resume_unwind(e);
204+
}
202205
}

src/ip/link/tests/dummy.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,9 @@ where
7575
});
7676

7777
// clean up
78-
exec_cmd(&["ip", "link", "del", name]);
79-
assert!(result.is_ok())
78+
let _ = exec_cmd(&["ip", "link", "del", name]);
79+
80+
if let Err(e) = result {
81+
std::panic::resume_unwind(e);
82+
}
8083
}

src/ip/link/tests/nlmon.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,9 @@ where
6767
});
6868

6969
// clean up
70-
exec_cmd(&["ip", "link", "del", name]);
71-
assert!(result.is_ok())
70+
let _ = exec_cmd(&["ip", "link", "del", name]);
71+
72+
if let Err(e) = result {
73+
std::panic::resume_unwind(e);
74+
}
7275
}

src/ip/link/tests/vlan.rs

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,10 @@ where
281281
});
282282

283283
// clean up
284-
exec_cmd(&["ip", "link", "del", vlan_name]);
285-
exec_cmd(&["ip", "link", "del", &parent_name]);
286-
assert!(result.is_ok())
284+
let _ = exec_cmd(&["ip", "link", "del", vlan_name]);
285+
let _ = exec_cmd(&["ip", "link", "del", &parent_name]);
286+
287+
if let Err(e) = result {
288+
std::panic::resume_unwind(e);
289+
}
287290
}

src/ip/link/tests/vxlan.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ where
6666
});
6767

6868
// clean up
69-
exec_cmd(&["ip", "link", "del", vxlan_name]);
70-
assert!(result.is_ok())
69+
let _ = exec_cmd(&["ip", "link", "del", vxlan_name]);
70+
71+
if let Err(e) = result {
72+
std::panic::resume_unwind(e);
73+
}
7174
}

0 commit comments

Comments
 (0)