Making DynamicEnum::is_dynamic() return true (#14732)

# Objective

- Right now `DynamicEnum::is_dynamic()` is returning `false`. I don't
think this was expected, since the rest of `Dynamic*` types return
`true`.

## Solution

- Making `DynamicEnum::is_dynamic()` return true

## Testing

- Added an extra unit test to verify that `.is_dynamic()` returns
`true`.
This commit is contained in:
eckz 2024-08-15 16:10:52 +02:00 committed by François
parent dcb506ea70
commit 0793d05256
No known key found for this signature in database
2 changed files with 11 additions and 0 deletions

View file

@ -424,6 +424,11 @@ impl Reflect for DynamicEnum {
enum_debug(self, f)?;
write!(f, ")")
}
#[inline]
fn is_dynamic(&self) -> bool {
true
}
}
impl_type_path!((in bevy_reflect) DynamicEnum);

View file

@ -193,6 +193,12 @@ mod tests {
assert_eq!(MyEnum::A, value);
}
#[test]
fn dynamic_enum_should_return_is_dynamic() {
let dyn_enum = DynamicEnum::from(MyEnum::B(123, 321));
assert!(dyn_enum.is_dynamic());
}
#[test]
fn enum_should_iterate_fields() {
// === Unit === //