Skip to content

Latest commit

 

History

History
87 lines (51 loc) · 4.62 KB

File metadata and controls

87 lines (51 loc) · 4.62 KB
graph LR
    EndpointNode["EndpointNode"]
    RequestNode["RequestNode"]
    TemplateRender["TemplateRender"]
    SpecEvaluator["SpecEvaluator"]
    CodeEvaluator["CodeEvaluator"]
    StringEvaluator["StringEvaluator"]
    EndpointNode -- "manages" --> RequestNode
    EndpointNode -- "uses" --> SpecEvaluator
    RequestNode -- "uses" --> SpecEvaluator
    RequestNode -- "uses" --> CodeEvaluator
    TemplateRender -- "provides input to" --> EndpointNode
    TemplateRender -- "provides input to" --> RequestNode
    SpecEvaluator -- "delegates to" --> CodeEvaluator
    SpecEvaluator -- "delegates to" --> StringEvaluator
Loading

CodeBoardingDemoContact

Details

The API Specification Processor subsystem is responsible for parsing the raw API specification into an executable tree structure, handling templating, and dynamic expression evaluation.

EndpointNode

Represents a node in the API specification tree, structuring nested endpoints and orchestrating the execution of associated requests. It forms the backbone of the "executable tree structure."

Related Classes/Methods:

RequestNode

Encapsulates a single HTTP request, managing its details (URL, method, headers, body) and execution flow, including pre-request delays, retries, and post-request test execution. It is a leaf node in the executable tree.

Related Classes/Methods:

TemplateRender

Handles the "templating" aspect, dynamically generating parts of the API specification by resolving variables and expressions before the evaluation phase.

Related Classes/Methods:

SpecEvaluator

The primary orchestrator for "dynamic expression evaluation." It recursively traverses the specification, delegating specific evaluation tasks (code, string variables) to specialized evaluators.

Related Classes/Methods:

CodeEvaluator

Executes Python code snippets embedded within the specification, enabling dynamic value generation and complex assertion logic.

Related Classes/Methods:

StringEvaluator

Resolves string-based dynamic values, primarily by replacing placeholders with values from environment or custom variables.

Related Classes/Methods: