ads2_2022/code/python
2022-06-30 06:24:10 +02:00
..
assets woche12 > master: code py - config ergänzt 2022-06-21 17:24:40 +02:00
dist woche12 > master: code py - VERSION up 2022-06-20 17:33:20 +02:00
docs woche12 > master: code py - documentation 2022-06-20 17:33:29 +02:00
models woche12 > master: code py - schema 2022-06-21 19:01:13 +02:00
src woche12 > master: code py - pollards rho mit log-wachstum für y 2022-06-30 06:24:10 +02:00
tests master > master: code py - unit tests aktualisiert 2022-06-11 14:02:09 +02:00
.coveragerc master > master: code py - unit tests aktualisiert 2022-06-11 14:02:09 +02:00
.env master > master: src - py 2022-03-30 18:00:11 +02:00
.gitignore dev > master: code py - documentation erzeugt 2022-06-11 16:08:08 +02:00
justfile master > master: code py - scripts, doc-building 2022-06-12 10:27:57 +02:00
LICENSE master > master: src - py 2022-03-30 18:00:11 +02:00
main.py master > master: code py - minor 2022-06-11 14:07:00 +02:00
pyproject.toml woche12 > master: code py - VERSION up 2022-06-20 17:33:20 +02:00
README.md master > master: READMEs angepasst 2022-06-12 10:32:25 +02:00
requirements.txt master > master: code py - documentation generation 2022-06-11 16:07:09 +02:00

ADS2 - Implementierung in Python

Im Ordner ./src/* findet Module mit Datenstrukturen und Algorithmen.

Im Ordner ./tests/* findet man unit tests, die die verschiedenen Datenstrukturen und Algorithmen mit Testfälle belasten. Man kann auch direkt im Code von ./src/main.rs aus die Methoden mit Daten ausprobieren.

Voraussetzungen

  1. Der Python-Compiler ^3.10.* wird benötigt.
  2. Das justfile-Tool wird benötigt (siehe https://github.com/casey/just#installation).

Build -> Test -> Run

In einem IDE in dem Repo zu diesem Ordner navigieren.
Eine bash-Konsole aufmachen und folgende Befehle ausführen:

# Zeige alle Befehle:
just
# Zur Installation der Requirements (nur und immer nach Änderungen nötig):
just build
# Zur Ausführung der unit tests:
just tests
# Zur Ausführung des Programms
just run
# Zur Bereinigung aller Artefakte
just clean

Man kann auch mit einem guten Editor/IDE die Tests einzeln ausführen.

Testfälle durch Config-Datei

Statt den Code immer anfassen zu müssen, kann man Fälle für die verschiedenen Algorithmen in der ./assets/commands.yaml erfassen und (mittels just run) das Programm ausführen.

Weitere globale Einstellungen (z. B. über Verbosity, Penalty-Konstanten, usw.) kann man in ./assets/config.yaml einstellen.