operations_research/OR_HTML_04/Notebooks_04
Repository files (latest commit first)
Filename Latest commit message Latest commit date
dschlueter a4fc247116 Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test
Alle 25 Notebooks sind nun fehlerfrei testbar (25 passed). Dafür drei
Änderungen im Build und eine neue Test-Infrastruktur:

1. pyproject.toml: nbmake>=1.5 in der dev-Gruppe.

2. build_version_04.py: Notebooks bekommen zwei Setup-Zellen und
   Subprocess-Zellen für Programme, die nicht direkt im Kernel laufen:
   - NOTEBOOK_SETUP_2: __file__ definieren, sys.path für or_kern,
     multiprocessing auf fork (Spawn findet Kernel-Funktionen nicht).
   - _braucht_subprocess: erkennt highspy (Solver-Konflikt), pytest
     (SystemExit), get_context('spawn'), subprocess+__file__ (sucht
     .py-Dateien), sys.exit (SystemExit). Diese Programme erscheinen
     als Markdown-Codeblock (sichtbar, nicht ausführbar) plus einer
     Subprocess-Zelle mit NO_COLOR=1 (verhindert ANSI-Codes, die der
     Parser von Mutationstest.py nicht verarbeitet).
   - Solver-Konflikt-Erkennung: wenn ein Kapitel sowohl ortools als
     auch highspy importiert, laufen auch reine ortools-Programme als
     Subprocess (highspy schon im Kernel).

3. teste_code_04.py: inkrementeller Test — nur geänderte/neue Programme
   und Notebooks (via git status). Netzabhängige Dateien (yfinance)
   werden automatisch erkannt und nur getestet, wenn Internet verfügbar.

4. PLAN.md Abschnitt 10: neuer Verifikationsschritt 4 (pytest --nbmake).
   PROGRESS.md und CLAUDE.md aktualisiert.

Gefundene und behobene Probleme:
- or_kern-Import: sys.path im Notebook erweitert.
- __file__ nicht definiert: zweite Setup-Zelle setzt es.
- multiprocessing spawn: fork erzwungen (Ein_System_Vier_Ansaetze.py).
- ortools/highspy-Konflikt: Subprocess für beide Solver.
- pytest SystemExit: Subprocess für test_or_kern.py und Mutationstest.py.
- sys.exit(0): Subprocess für Installationstest.py.
- ANSI-Codes in pytest-Ausgabe: NO_COLOR=1 in Subprocess-Zelle.
2026-09-11 22:39:14 +02:00
..
anhang-fehlerdiagnose.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
bruecke.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
cpsat.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
cvar.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
dekomposition.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
dynamische-programmierung.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
einfuehrung.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
finanzdaten.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
fundament.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
graphen.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
handelsmaschine.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
index.html Notebook-Uebersichtsseite - das fehlende Gegenstueck zu programme.html 2026-09-08 15:20:06 +02:00
lp.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
markowitz.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
mehrziel.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
metaheuristiken.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
milp.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
modellierung.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
oekosystem.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
praxisfallen.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
prognose.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
qp-nlp.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
supplychain.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
testing.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
unsicherheit.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00
vorwort.ipynb Notebook-Tests: nbmake + Subprocess-Zellen + inkrementeller Test 2026-09-11 22:39:14 +02:00