Source code for nisystemlink.clients.testmonitor.models._status

from enum import Enum
from typing import Optional

from nisystemlink.clients.core._uplink._json_model import JsonModel


[docs]class StatusType(str, Enum): """The types of statuses that a result can have.""" LOOPING = "LOOPING" SKIPPED = "SKIPPED" CUSTOM = "CUSTOM" DONE = "DONE" PASSED = "PASSED" FAILED = "FAILED" RUNNING = "RUNNING" WAITING = "WAITING" TERMINATED = "TERMINATED" ERRORED = "ERRORED" TIMED_OUT = "TIMED_OUT"
[docs]class Status(JsonModel): """Contains information about a status object.""" status_type: StatusType """The type of status.""" status_name: Optional[str] """The name of the status."""
[docs] @staticmethod def LOOPING() -> "Status": return Status(status_type=StatusType.LOOPING)
[docs] @staticmethod def SKIPPED() -> "Status": return Status(status_type=StatusType.SKIPPED)
[docs] @staticmethod def DONE() -> "Status": return Status(status_type=StatusType.DONE)
[docs] @staticmethod def PASSED() -> "Status": return Status(status_type=StatusType.PASSED)
[docs] @staticmethod def FAILED() -> "Status": return Status(status_type=StatusType.FAILED)
[docs] @staticmethod def RUNNING() -> "Status": return Status(status_type=StatusType.RUNNING)
[docs] @staticmethod def WAITING() -> "Status": return Status(status_type=StatusType.WAITING)
[docs] @staticmethod def TERMINATED() -> "Status": return Status(status_type=StatusType.TERMINATED)
[docs] @staticmethod def ERRORED() -> "Status": return Status(status_type=StatusType.ERRORED)
[docs] @staticmethod def TIMED_OUT() -> "Status": return Status(status_type=StatusType.TIMED_OUT)