fix(plugin): trace MText registry enums

This commit is contained in:
Hakan Seven 2026-08-20 00:26:32 +03:00
commit 9202297d1b
2 changed files with 45 additions and 1 deletions

View file

@ -97,6 +97,23 @@ fn add_enum_samples(tracer: &mut Tracer, samples: &mut Samples) {
let _ = tracer.trace_value(samples, &acadrust::entities::SmoothSurfaceType::CubicBSpline); let _ = tracer.trace_value(samples, &acadrust::entities::SmoothSurfaceType::CubicBSpline);
let _ = tracer.trace_value(samples, &acadrust::entities::SmoothSurfaceType::Bezier); let _ = tracer.trace_value(samples, &acadrust::entities::SmoothSurfaceType::Bezier);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::TopLeft);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::TopCenter);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::TopRight);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::MiddleLeft);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::MiddleCenter);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::MiddleRight);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::BottomLeft);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::BottomCenter);
let _ = tracer.trace_value(samples, &acadrust::entities::AttachmentPoint::BottomRight);
let _ = tracer.trace_value(samples, &acadrust::entities::DrawingDirection::LeftToRight);
let _ = tracer.trace_value(samples, &acadrust::entities::DrawingDirection::TopToBottom);
let _ = tracer.trace_value(samples, &acadrust::entities::DrawingDirection::ByStyle);
let _ = tracer.trace_value(samples, &acadrust::entities::LineSpacingStyle::AtLeast);
let _ = tracer.trace_value(samples, &acadrust::entities::LineSpacingStyle::Exactly);
let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::String(String::new())); let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::String(String::new()));
let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::ControlString(String::new())); let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::ControlString(String::new()));
let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::LayerName(String::new())); let _ = tracer.trace_value(samples, &acadrust::xdata::XDataValue::LayerName(String::new()));

View file

@ -33,7 +33,7 @@ mod tests {
let registry: TypeRegistry = let registry: TypeRegistry =
serde_json::from_str(get_embedded_type_registry_json()).expect("valid TypeRegistry JSON"); serde_json::from_str(get_embedded_type_registry_json()).expect("valid TypeRegistry JSON");
for name in ["Point", "Line", "Circle", "EntityCommon"] { for name in ["Point", "Line", "Circle", "MText", "EntityCommon"] {
assert!( assert!(
registry.types.contains_key(&TypeId::new(name)), registry.types.contains_key(&TypeId::new(name)),
"registry should contain {}", "registry should contain {}",
@ -42,6 +42,33 @@ mod tests {
} }
} }
#[test]
fn embedded_type_registry_mtext_is_struct_with_expected_fields() {
let registry: TypeRegistry =
serde_json::from_str(get_embedded_type_registry_json()).expect("valid TypeRegistry JSON");
let mtext = registry
.types
.get(&TypeId::new("MText"))
.expect("MText in registry");
assert_eq!(mtext.kind, TypeKind::Struct);
let field_names: Vec<&str> = mtext.fields.iter().map(|f| f.name.as_str()).collect();
for expected in [
"common",
"value",
"insertion_point",
"height",
"attachment_point",
] {
assert!(
field_names.contains(&expected),
"MText should have field {}",
expected
);
}
}
#[test] #[test]
fn embedded_type_registry_point_is_struct_with_expected_fields() { fn embedded_type_registry_point_is_struct_with_expected_fields() {
let registry: TypeRegistry = let registry: TypeRegistry =