2.3 KiB
2.3 KiB
1. Belege und Festlegung
- 1.1 Vorhandene binäre Beispieldateien aus dem Originalpaket und
github.com/cout/vbdossammeln und inbeispieldateien.mddieses Changes mit Herkunft auflisten; verifiziert durch die Liste mit Prüfsumme je Datei - 1.2 Serialisierung nach D1 festlegen und in
docs/dateiformate.mdan die Stelle des TODO schreiben; verifiziert durch den Abschnitt mit vollständigem Beispiel
2. Textformat lesen und schreiben
- 2.1 Leser für
VERSION, verschachtelteBegin/End-Blöcke und Eigenschaftszeilen; verifiziert durch Unit-Tests für ein Formular mit eingebettetem Steuerelement und für eine unbekannte Version - 2.2 Prüfungen gegen Klasse, Eigenschaftsname und Wertebereich mit Datei, Zeile und Name in der Meldung; verifiziert durch Unit-Tests je Fehlerart, einschließlich unausgeglichenem Block
- 2.3 Codeteil vom Beschreibungsteil trennen und unverändert durchreichen; verifiziert durch einen Test, der den Quelltext byte-gleich zurückgibt
- 2.4 Schreiber nach D1 — Einrückung, Spaltenbreite, Reihenfolge, nur Abweichungen; verifiziert durch einen Test gegen das dokumentierte Beispiel
- 2.5 Rundlauf in beiden Richtungen (D2); verifiziert durch Tests „lesen, schreiben, byte-gleich" und „schreiben, lesen, Beschreibung gleich"
3. Binäre Dateien
- 3.1 Aufbau des Binärformats aus den Dateien aus 1.1 erschließen und in
docs/dateiformate.mdbeschreiben; verifiziert durch die Beschreibung mit Feldtabelle und KennungFC 08 01 00 - 3.2 Binärleser auf dieselbe Formularbeschreibung wie der Textleser; verifiziert durch einen Test, der eine Beispieldatei liest und gegen die dokumentierte Erwartung prüft
- 3.3 Unbekannte Eigenschaften namentlich melden und überspringen, unerkannte Struktur mit Fundstelle abbrechen; verifiziert durch Unit-Tests für beide Fälle
- 3.4 Unterbefehl
tbc convert-frmmit Abbruch ohne Teilausgabe; verifiziert durch einen Test, der nach dem Abbruch das Fehlen der Ausgabedatei prüft
4. Abnahme
- 4.1 Alle Beispieldateien aus 1.1 konvertieren und die Zusammenfassung der übersprungenen Eigenschaften festhalten; verifiziert durch den Lauf über den gesamten Bestand
- 4.2
cargo testgrün undopenspec validate phase-4-frm --strictohne Befund; verifiziert durch beide Kommandos