From f4fed5293abc3b241f6ad29312c606edf0dd8027 Mon Sep 17 00:00:00 2001 From: bom Date: Fri, 28 Apr 2023 13:33:54 +0200 Subject: [PATCH] Add and use throw_if_invalid function Validates objects and raises an error if they are invalid --- src/main/python/ddadevops/domain/common.py | 5 +++++ .../python/ddadevops/infrastructure/release_mixin/repo.py | 4 +--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/python/ddadevops/domain/common.py b/src/main/python/ddadevops/domain/common.py index d944d32..a5f1fc8 100644 --- a/src/main/python/ddadevops/domain/common.py +++ b/src/main/python/ddadevops/domain/common.py @@ -18,6 +18,11 @@ class Validateable: def is_valid(self) -> bool: return len(self.validate()) < 1 + + def throw_if_invalid(self): + if not self.is_valid(): + issues = '\n'.join(self.validate()) + raise ValueError(f"Invalid Validateable: {issues}") class DnsRecord(Validateable): diff --git a/src/main/python/ddadevops/infrastructure/release_mixin/repo.py b/src/main/python/ddadevops/infrastructure/release_mixin/repo.py index 4ab3ae5..2bfbb37 100644 --- a/src/main/python/ddadevops/infrastructure/release_mixin/repo.py +++ b/src/main/python/ddadevops/infrastructure/release_mixin/repo.py @@ -124,7 +124,5 @@ class ReleaseContextRepository: self.version_repository.get_version(), self.main_branch, ) - if not result.is_valid(): - issues = '\n'.join(result.validate()) - raise ValueError(f"invalid release: {issues}") + result.throw_if_invalid() return result