"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import google.protobuf.descriptor
import google.protobuf.message
import google.protobuf.timestamp_pb2
import typing
import yandex.cloud.loadtesting.api.v1.test.file_pointer_pb2
import yandex.cloud.loadtesting.api.v1.test.imbalance_point_pb2
import yandex.cloud.loadtesting.api.v1.test.status_pb2

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class Summary(google.protobuf.message.Message):
    """Process of test and some results"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STATUS_FIELD_NUMBER: builtins.int
    CREATED_AT_FIELD_NUMBER: builtins.int
    CREATED_BY_FIELD_NUMBER: builtins.int
    STARTED_AT_FIELD_NUMBER: builtins.int
    FINISHED_AT_FIELD_NUMBER: builtins.int
    IS_FINISHED_FIELD_NUMBER: builtins.int
    ERROR_FIELD_NUMBER: builtins.int
    IMBALANCE_POINT_FIELD_NUMBER: builtins.int
    ASSIGNED_AGENT_ID_FIELD_NUMBER: builtins.int
    ARTIFACTS_FIELD_NUMBER: builtins.int
    status: yandex.cloud.loadtesting.api.v1.test.status_pb2.Status.ValueType
    """Status of the test."""
    created_by: builtins.str
    """UA or SA that created the test."""
    is_finished: builtins.bool
    """Indicates whether the test is finished."""
    error: builtins.str
    """Error message."""
    assigned_agent_id: builtins.str
    """ID of the agent that executed the test."""
    @property
    def created_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Creation timestamp."""

    @property
    def started_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Test start timestamp.

        Empty if the test has not been started yet.
        """

    @property
    def finished_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
        """Test finish timestamp.

        Empty if the test has not been finished yet.
        """

    @property
    def imbalance_point(self) -> yandex.cloud.loadtesting.api.v1.test.imbalance_point_pb2.ImbalancePoint:
        """Detected imbalance point.

        Contains information about a state at the moment it has been
        [auto-stopped](/docs/load-testing/concepts/auto-stop).

        Empty if no auto-stop occured.
        """

    @property
    def artifacts(self) -> yandex.cloud.loadtesting.api.v1.test.file_pointer_pb2.FilePointer:
        """Test output artifacts.

        Link to the artifacts output target containing `.log` and other files collected
        during test execution.
        """

    def __init__(
        self,
        *,
        status: yandex.cloud.loadtesting.api.v1.test.status_pb2.Status.ValueType = ...,
        created_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        created_by: builtins.str = ...,
        started_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        finished_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
        is_finished: builtins.bool = ...,
        error: builtins.str = ...,
        imbalance_point: yandex.cloud.loadtesting.api.v1.test.imbalance_point_pb2.ImbalancePoint | None = ...,
        assigned_agent_id: builtins.str = ...,
        artifacts: yandex.cloud.loadtesting.api.v1.test.file_pointer_pb2.FilePointer | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["artifacts", b"artifacts", "created_at", b"created_at", "finished_at", b"finished_at", "imbalance_point", b"imbalance_point", "started_at", b"started_at"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["artifacts", b"artifacts", "assigned_agent_id", b"assigned_agent_id", "created_at", b"created_at", "created_by", b"created_by", "error", b"error", "finished_at", b"finished_at", "imbalance_point", b"imbalance_point", "is_finished", b"is_finished", "started_at", b"started_at", "status", b"status"]) -> None: ...

global___Summary = Summary
