# Generated by ariadne-codegen
# Source: vals/graphql/

from typing import Any, List, Optional

from pydantic import Field

from .base_model import BaseModel


class PullTestResultsWithCount(BaseModel):
    test_results_with_count: "PullTestResultsWithCountTestResultsWithCount" = Field(
        alias="testResultsWithCount"
    )


class PullTestResultsWithCountTestResultsWithCount(BaseModel):
    test_results: List["PullTestResultsWithCountTestResultsWithCountTestResults"] = (
        Field(alias="testResults")
    )
    count: int


class PullTestResultsWithCountTestResultsWithCountTestResults(BaseModel):
    id: str
    llm_output: str = Field(alias="llmOutput")
    pass_percentage: float = Field(alias="passPercentage")
    pass_percentage_with_optional: float = Field(alias="passPercentageWithOptional")
    result_json: Any = Field(alias="resultJson")
    qa_pair: Optional[
        "PullTestResultsWithCountTestResultsWithCountTestResultsQaPair"
    ] = Field(alias="qaPair")
    test: "PullTestResultsWithCountTestResultsWithCountTestResultsTest"
    metadata: Optional[Any]


class PullTestResultsWithCountTestResultsWithCountTestResultsQaPair(BaseModel):
    context: Any
    output_context: Any = Field(alias="outputContext")
    error_message: str = Field(alias="errorMessage")


class PullTestResultsWithCountTestResultsWithCountTestResultsTest(BaseModel):
    test_id: str = Field(alias="testId")
    input_under_test: str = Field(alias="inputUnderTest")
    context: Any


PullTestResultsWithCount.model_rebuild()
PullTestResultsWithCountTestResultsWithCount.model_rebuild()
PullTestResultsWithCountTestResultsWithCountTestResults.model_rebuild()
