Skip to content

Commit d73189f

Browse files
committed
add panicking test
1 parent 939df2b commit d73189f

File tree

1 file changed

+17
-2
lines changed
  • crates/bevy_ecs/src/system/commands

1 file changed

+17
-2
lines changed

crates/bevy_ecs/src/system/commands/mod.rs

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ impl<T> Debug for InsertBundleError<T> {
402402
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
403403
f.debug_struct("InsertBundleError")
404404
.field("entity", &self.entity)
405-
.field("bundle", &std::any::type_name::<T>())
405+
.field("bundle_type", &std::any::type_name::<T>())
406406
.finish()
407407
}
408408
}
@@ -441,7 +441,7 @@ impl<T> Debug for InsertError<T> {
441441
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
442442
f.debug_struct("InsertError")
443443
.field("entity", &self.entity)
444-
.field("component", &std::any::type_name::<T>())
444+
.field("component_type", &std::any::type_name::<T>())
445445
.finish()
446446
}
447447
}
@@ -748,4 +748,19 @@ mod tests {
748748

749749
assert_eq!(invoked.load(Ordering::Relaxed), 1);
750750
}
751+
752+
#[test]
753+
#[should_panic]
754+
fn test_panicking_error_handler() {
755+
std::panic::set_hook(Box::new(|_| {})); // prevents printing of stack trace.
756+
757+
let mut world = World::default();
758+
let mut queue = CommandQueue::default();
759+
{
760+
let mut commands = Commands::new(&mut queue, &world);
761+
let invalid_entity = Entity::new(42);
762+
commands.entity(invalid_entity).despawn().panic_on_failure();
763+
}
764+
queue.apply(&mut world);
765+
}
751766
}

0 commit comments

Comments
 (0)