Skip to content

factory

Factory to create artifacts from models.

ArtifactFactory

Source code in mlte/artifact/factory.py
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
class ArtifactFactory:

    @staticmethod
    def from_model(artifact_model: ArtifactModel) -> Artifact:
        """Returns a proper artifact from the given model."""
        artifact_type = artifact_model.body.artifact_type
        if artifact_type == ArtifactType.NEGOTIATION_CARD:
            return NegotiationCard.from_model(artifact_model)
        if artifact_type == ArtifactType.TEST_SUITE:
            return TestSuite.from_model(artifact_model)
        if artifact_type == ArtifactType.TEST_RESULTS:
            return TestResults.from_model(artifact_model)
        if artifact_type == ArtifactType.REPORT:
            return Report.from_model(artifact_model)
        if artifact_type == ArtifactType.EVIDENCE:
            return EvidenceFactory.from_model(artifact_model)

        raise RuntimeError(f"Artifact type {artifact_type} not supported.")

from_model(artifact_model) staticmethod

Returns a proper artifact from the given model.

Source code in mlte/artifact/factory.py
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
@staticmethod
def from_model(artifact_model: ArtifactModel) -> Artifact:
    """Returns a proper artifact from the given model."""
    artifact_type = artifact_model.body.artifact_type
    if artifact_type == ArtifactType.NEGOTIATION_CARD:
        return NegotiationCard.from_model(artifact_model)
    if artifact_type == ArtifactType.TEST_SUITE:
        return TestSuite.from_model(artifact_model)
    if artifact_type == ArtifactType.TEST_RESULTS:
        return TestResults.from_model(artifact_model)
    if artifact_type == ArtifactType.REPORT:
        return Report.from_model(artifact_model)
    if artifact_type == ArtifactType.EVIDENCE:
        return EvidenceFactory.from_model(artifact_model)

    raise RuntimeError(f"Artifact type {artifact_type} not supported.")