From e2e8a0849e433fb9c7aef8aa241c85ac88a47aa1 Mon Sep 17 00:00:00 2001
From: Xavier Robin <xavalias-github@xavier.robin.name>
Date: Mon, 6 Feb 2023 13:51:49 +0100
Subject: [PATCH] fix: SCHWED-5783 catch absence of ligands

Raise a ValueError upon initialization.
---
 modules/mol/alg/pymod/ligand_scoring.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/modules/mol/alg/pymod/ligand_scoring.py b/modules/mol/alg/pymod/ligand_scoring.py
index d03caf265..6d1a25ad9 100644
--- a/modules/mol/alg/pymod/ligand_scoring.py
+++ b/modules/mol/alg/pymod/ligand_scoring.py
@@ -136,12 +136,16 @@ class LigandScorer:
             self.target_ligands = self._extract_ligands(self.target)
         else:
             self.target_ligands = self._prepare_ligands(self.target, target, target_ligands)
+        if len(self.target_ligands) == 0:
+            raise ValueError("No ligands in the target")
 
         # Extract ligands from model
         if model_ligands is None:
             self.model_ligands = self._extract_ligands(self.model)
         else:
             self.model_ligands = self._prepare_ligands(self.model, model, model_ligands)
+        if len(self.model_ligands) == 0:
+            raise ValueError("No ligands in the model")
 
         self._chain_mapper = chain_mapper
         self.resnum_alignments = resnum_alignments
-- 
GitLab