Skip to content

Fix #248: support inline AsyncAPI message payloads and align custom validator packages (6.7.4) - #413

Open
joseegman wants to merge 1 commit into
sngular:mainfrom
joseegman:fix/248-asyncapi-inline-payload-custom-validators
Open

Fix #248: support inline AsyncAPI message payloads and align custom validator packages (6.7.4)#413
joseegman wants to merge 1 commit into
sngular:mainfrom
joseegman:fix/248-asyncapi-inline-payload-custom-validators

Conversation

@joseegman

Copy link
Copy Markdown
Contributor

Descripción

Fix del bug reportado en #248 ([ASYNCAPI] Custom validators bug): cuando un mensaje AsyncAPI tiene un payload inline (mapa de propiedades con $ref sin declarar type/properties, como el CreateOrderEvent del spec adjunto a la issue), el generador crasheaba con un FreeMarker error al procesar CreateOrderEventDTO porque un campo quedaba con baseName nulo.

Además, se verifica que los custom validators generados quedan alineados con su package: el test de regresión comprueba que cada .java generado declara un package que coincide con su estructura de carpetas.

Cambios

  • ApiTool.isInlineObject: detección de schemas inline (objeto sin type/properties/$ref/combinadores) cuyo contenido son campos de negocio.
  • ModelBuilder.getFields: los schemas inline se procesan ahora como propiedades (schema.fields()) en lugar de caer en la rama final que generaba un SchemaFieldObject sin baseName.
  • Test de regresión TestIssue248CustomValidators: usa el spec real event-api.yml de la issue [ASYNCAPI] Custom validators bug #248 y valida que todos los archivos generados (DTOs, consumer, producer y custom validators) declaran el package correcto según su ruta.

Verificación

  • multiapi-engine: 134 tests en verde.
  • scs-multiapi-maven-plugin: 1 test en verde.
  • scs-multiapi-gradle-plugin: gradlew test BUILD SUCCESSFUL.

Versión bumpada a 6.7.4 en los tres módulos.

@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 37 complexity · 0 duplication

Metric Results
Complexity 37
Duplication 0

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant