From c0b96f7c059b78eb2b7234d56ba62ccdedc9cf01 Mon Sep 17 00:00:00 2001 From: Lars Date: Sat, 8 Nov 2025 15:25:45 +0100 Subject: [PATCH] Dateien nach "tests" hochladen --- tests/test_type_registry.py | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tests/test_type_registry.py diff --git a/tests/test_type_registry.py b/tests/test_type_registry.py new file mode 100644 index 0000000..3782216 --- /dev/null +++ b/tests/test_type_registry.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- + +import os, tempfile, textwrap +from app.core.type_registry import load_type_registry, resolve_note_type, get_type_config, effective_chunk_profile, profile_overlap + +def test_defaults_when_missing(): + # ensure default kicks in if file does not exist + reg = load_type_registry(os.path.join("config", "does_not_exist.yaml")) + assert reg.get("_using_defaults", False) is True + t = resolve_note_type(None, reg) + assert t == "concept" + cfg = get_type_config(t, reg) + assert cfg.get("chunk_profile") in ("medium", "long", "short") + +def test_custom_file(): + with tempfile.TemporaryDirectory() as td: + p = os.path.join(td, "types.yaml") + with open(p, "w", encoding="utf-8") as f: + f.write(textwrap.dedent(''' + version: 1.0 + types: + concept: + chunk_profile: medium + edge_defaults: ["references"] + retriever_weight: 1.0 + task: + chunk_profile: short + edge_defaults: ["depends_on"] + retriever_weight: 0.8 + ''')) + reg = load_type_registry(p) + assert resolve_note_type("task", reg) == "task" + assert effective_chunk_profile("task", reg) == "short" + assert profile_overlap("short")[0] < profile_overlap("long")[0]