use bevy_ecs::name::Name;
use bevy_ecs::prelude::*;
use wintf::ecs::format_entity_name;
#[test]
fn format_entity_name_with_name_returns_name_string() {
let mut world = World::new();
let entity = world.spawn(Name::new("TestEntity")).id();
let name = world.get::<Name>(entity);
let result = format_entity_name(entity, name);
assert_eq!(result, "TestEntity");
}
#[test]
fn format_entity_name_without_name_returns_entity_format() {
let mut world = World::new();
let entity = world.spawn_empty().id();
let result = format_entity_name(entity, None);
assert!(result.starts_with("Entity("));
assert!(result.ends_with(")"));
}
#[test]
fn format_entity_name_with_japanese_name() {
let mut world = World::new();
let entity = world.spawn(Name::new("赤いボックス")).id();
let name = world.get::<Name>(entity);
let result = format_entity_name(entity, name);
assert_eq!(result, "赤いボックス");
}
#[test]
fn format_entity_name_with_hyphenated_name() {
let mut world = World::new();
let entity = world.spawn(Name::new("FlexDemo-Window")).id();
let name = world.get::<Name>(entity);
let result = format_entity_name(entity, name);
assert_eq!(result, "FlexDemo-Window");
}