spdx_tools.spdx.validation.actor_validator
1# SPDX-FileCopyrightText: 2022 spdx contributors 2# 3# SPDX-License-Identifier: Apache-2.0 4 5from beartype.typing import List 6 7from spdx_tools.spdx.model import Actor, ActorType 8from spdx_tools.spdx.validation.validation_message import SpdxElementType, ValidationContext, ValidationMessage 9 10 11def validate_actors(actors: List[Actor], parent_id: str) -> List[ValidationMessage]: 12 validation_messages = [] 13 for actor in actors: 14 validation_messages.extend(validate_actor(actor, parent_id)) 15 16 return validation_messages 17 18 19def validate_actor(actor: Actor, parent_id: str) -> List[ValidationMessage]: 20 validation_messages = [] 21 22 if actor.actor_type == ActorType.TOOL and actor.email is not None: 23 validation_messages.append( 24 ValidationMessage( 25 f"email must be None if actor_type is TOOL, but is: {actor.email}", 26 ValidationContext(parent_id=parent_id, element_type=SpdxElementType.ACTOR, full_element=actor), 27 ) 28 ) 29 30 return validation_messages
def
validate_actors( actors: list[spdx_tools.spdx.model.actor.Actor], parent_id: str) -> list[spdx_tools.spdx.validation.validation_message.ValidationMessage]:
def
validate_actor( actor: spdx_tools.spdx.model.actor.Actor, parent_id: str) -> list[spdx_tools.spdx.validation.validation_message.ValidationMessage]:
20def validate_actor(actor: Actor, parent_id: str) -> List[ValidationMessage]: 21 validation_messages = [] 22 23 if actor.actor_type == ActorType.TOOL and actor.email is not None: 24 validation_messages.append( 25 ValidationMessage( 26 f"email must be None if actor_type is TOOL, but is: {actor.email}", 27 ValidationContext(parent_id=parent_id, element_type=SpdxElementType.ACTOR, full_element=actor), 28 ) 29 ) 30 31 return validation_messages