add typing to models

This commit is contained in:
ChrisTerBeke 2018-11-26 15:30:30 +01:00
parent a382b77eaa
commit da5683c876

View file

@ -4,17 +4,17 @@
## Base model that maps kwargs to instance attributes. ## Base model that maps kwargs to instance attributes.
class BaseModel: class BaseModel:
def __init__(self, **kwargs): def __init__(self, **kwargs) -> None:
self.__dict__.update(kwargs) self.__dict__.update(kwargs)
self.validate() self.validate()
def validate(self): def validate(self) -> None:
pass pass
## Class representing a material that was fetched from the cluster API. ## Class representing a material that was fetched from the cluster API.
class ClusterMaterial(BaseModel): class ClusterMaterial(BaseModel):
def __init__(self, **kwargs): def __init__(self, **kwargs) -> None:
self.guid = None # type: str self.guid = None # type: str
self.material = None # type: str self.material = None # type: str
self.brand = None # type: str self.brand = None # type: str
@ -23,14 +23,14 @@ class ClusterMaterial(BaseModel):
self.density = None # type: str self.density = None # type: str
super().__init__(**kwargs) super().__init__(**kwargs)
def validate(self): def validate(self) -> None:
if not self.guid: if not self.guid:
raise ValueError("guid is required on ClusterMaterial") raise ValueError("guid is required on ClusterMaterial")
## Class representing a local material that was fetched from the container registry. ## Class representing a local material that was fetched from the container registry.
class LocalMaterial(BaseModel): class LocalMaterial(BaseModel):
def __init__(self, **kwargs): def __init__(self, **kwargs) -> None:
self.GUID = None # type: str self.GUID = None # type: str
self.id = None # type: str self.id = None # type: str
self.type = None # type: str self.type = None # type: str
@ -49,7 +49,7 @@ class LocalMaterial(BaseModel):
self.compatible = None # type: bool self.compatible = None # type: bool
super().__init__(**kwargs) super().__init__(**kwargs)
def validate(self): def validate(self) -> None:
if not self.GUID: if not self.GUID:
raise ValueError("guid is required on LocalMaterial") raise ValueError("guid is required on LocalMaterial")
if not self.id: if not self.id: