Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
import sys
import unittest
from pathlib import Path


SCRIPTS_DIR = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(SCRIPTS_DIR))

from utils.validators import load_pipeline_config, validate_samplesheet # noqa: E402


class LoadPipelineConfigTest(unittest.TestCase):
def test_loads_known_pipeline_config(self):
config = load_pipeline_config("rnaseq")

self.assertIsNotNone(config)
self.assertEqual(config["name"], "rnaseq")
self.assertIn("samplesheet", config)

def test_unknown_pipeline_returns_none(self):
self.assertIsNone(load_pipeline_config("unknown-pipeline"))

def test_validate_samplesheet_recognizes_known_pipeline(self):
result = validate_samplesheet([], "rnaseq")

self.assertEqual(result.errors, ["Samplesheet is empty - no samples found"])


if __name__ == "__main__":
unittest.main()
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@ def summary(self) -> str:
def load_pipeline_config(pipeline: str) -> Optional[Dict]:
"""Load pipeline configuration from YAML file."""
# Find config directory relative to this file
script_dir = Path(__file__).parent.parent.parent
config_path = script_dir / "config" / "pipelines" / f"{pipeline}.yaml"
scripts_dir = Path(__file__).parent.parent
config_path = scripts_dir / "config" / "pipelines" / f"{pipeline}.yaml"

if not config_path.exists():
return None
Expand Down