zplCore.comzplCore.com

34Tests & Verifikation

xUnit-Testsuite

Parser, Rendering, Fonts, Shaping, Binding, Druckaufträge, Export, Objektmodell, Verbindungen, Druckerbefehle, Einstellungen – dotnet test läuft in wenigen Sekunden.

Barcodes werden zurückgelesen

Jeder portierte Encoder (Postcodes, Codablock F, Code 16K/49, PDF417/MicroPDF417, Han Xin, DotCode, Ultracode, rMQR, QR-Varianten, Data Matrix, Aztec, GS1, Composite …) ist bit-genau gegen bwip-js (zint-Portierungen gegen zint) geprüft – darunter alle 7 GS1-DataBar-Varianten mit 80 eigenen Referenzfällen – die Referenzmatrizen stehen in den Tests. Wo ZXing.Net die Symbologie kennt, wird zusätzlich dekodiert.

Datenbanken

EF Core mit SQLite (in-memory, 2000 Zeilen) und LiteDB (typisiert + BsonDocument) in den Unit-Tests, SQL Server 2022, PostgreSQL und MongoDB per Testcontainers in tests/ZplCore.IntegrationTests; samples/MassDataDemo erzeugt die Beispiel-Aufträge.

Prüfwerkzeuge, MCP & Pakete

Eigene Suiten für ZplCore.Testing, den MCP-Server (inklusive Angriffs-, Fuzz- und End-to-End-Tests der Sandbox) und Vector-Lift; Compliance, Scan-Proof, Import, Extraktion, GS1, RFID, Printer Twin und Chaos-Drucker in der Hauptsuite. build/package-smoke.sh packt die NuGet-Pakete und veröffentlicht eine Test-App (auch win-x64), build/aot-smoke.sh vergleicht JIT- und NativeAOT-Ausgaben.

Diese Doku

Alle Screenshots erzeugt samples/DocsGenerator aus echtem ZPL/EPL bzw. der Barcode-API; alle C#-Beispiele stehen kompilierbar in samples/DocsExamples und werden vom Generator wortgleich in diese Seite kopiert.

dotnet test                                  # alle Tests
dotnet run --project samples/LabelaryCompare # Pixelvergleich gegen Labelary-Referenzen
dotnet run --project samples/DocsGenerator   # docs/img, docs/zpl, docs/files, docs/examples.js, C#-Snippets
dotnet build samples/DocsExamples            # Compile-Check der Doku-Snippets
build/package-smoke.sh                       # NuGet-Pakete + Test-App (Windows-Publish inklusive)
build/aot-smoke.sh                           # JIT- gegen NativeAOT-Ausgaben