Skip to content

Arazzo Parser#1510

Closed
daniellopera15 wants to merge 13 commits intoWebFuzzing:masterfrom
daniellopera15:feature/arazzo-parser
Closed

Arazzo Parser#1510
daniellopera15 wants to merge 13 commits intoWebFuzzing:masterfrom
daniellopera15:feature/arazzo-parser

Conversation

@daniellopera15
Copy link
Copy Markdown

@daniellopera15 daniellopera15 commented Apr 21, 2026

A first version of an Arazzo parser is created. It only recognizes well-formed Arazzo and has no validations.

Copy link
Copy Markdown
Collaborator

@jgaleotti jgaleotti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have several issues regarding this PR. We might address them during our meeting today.

import kotlin.jvm.java
import kotlin.text.startsWith

object ArazzoAccess {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a Javadoc of the goal of this class

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why a singleton?

import io.swagger.v3.oas.models.media.Schema
import org.evomaster.core.problem.rest.arazzo.models.*

class ArazzoReferenceResolver(
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a Javadoc describing this class

private var currentPosition = 0

init {
// Esta Regex identifica todo el vocabulario válido de Arazzo
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove all comments in Spanish, only English is allowed for comments and names.

@@ -0,0 +1,103 @@
package org.evomaster.core.problem.rest.arazzo.parser

class SimpleConditionParser(condition: String) {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this parser needed? It does not seem to be used at all.

p0: JsonParser,
p1: DeserializationContext
): AnyExpression {
val node: JsonNode = p0.codec.readTree(p0)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this code automatically generated?

@@ -0,0 +1,10 @@
package org.evomaster.core.problem.rest.arazzo.models

class SuccessAction(
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add Javadoc

import io.swagger.v3.oas.models.media.Schema
import org.evomaster.core.problem.rest.arazzo.models.commons.WorkflowCommon

class Workflow(
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add Javadoc

@@ -0,0 +1,7 @@
package org.evomaster.core.problem.rest.arazzo.models

sealed class SuccessReusable {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add Javadoc

import org.evomaster.core.problem.rest.schema.SchemaArazzo
import org.evomaster.core.problem.rest.schema.SchemaOpenAPI

object ArazzoParser {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add Javadoc

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why a singleton?

import org.evomaster.core.problem.rest.arazzo.models.RuntimeExpression
import org.evomaster.core.problem.rest.arazzo.models.Source

object ExpressionParser {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this really necessary?

@jgaleotti
Copy link
Copy Markdown
Collaborator

This class should be moved into core-extra as a submodule arazzo-jvm. It must ablso be written with JDK8

@jgaleotti jgaleotti closed this Apr 27, 2026
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.

2 participants