InvoiceTextParserTest.php
Pfad: tests/Rechnung/InvoiceTextParserTest.php
Ext: php
Größe: 1108 Bytes
Geändert: 2026-07-16 16:57:10+02
<?php
declare(strict_types=1);
namespace Tests\Rechnung;
use Demo\Infrastructure\Rechnung\InvoiceTextParser;
use PHPUnit\Framework\TestCase;
/**
* Golden-Master-nahe Feldpruefung fuer den realen WEtell-Aufbau.
*/
final class InvoiceTextParserTest extends TestCase
{
/** Extrahiert alle belegten Sollwerte aus WEtell-Layouttext. */
public function testWetellFelderSindFachlichKorrekt(): void
{
$text = "Rechnung für Juni 2026 04.07.2026\nRechnungs-Nr.:\nRF183233049809\nBETRAG EXKL. MWST. 26,0504\nGESAMTRECHNUNGSBETRAG INKL. MWST 31,0000\nWEtell GmbH\nPaul-Ehrlich-Straße 7\n79106 Freiburg";
$data = (new InvoiceTextParser())->parse($text, 0.85);
self::assertSame('WEtell GmbH', $data->vendorName);
self::assertSame('RF183233049809', $data->invoiceNumber);
self::assertSame('2026-07-04', $data->invoiceDate);
self::assertSame('26.0504', $data->amount->netto);
self::assertSame('4.9496', $data->amount->steuer);
self::assertSame('31.0000', $data->amount->brutto);
self::assertTrue($data->hasRequiredFields());
}
}