2b03c4ae15
- Édition : listes contrepartie filtrées sur le site DU TICKET (immuable), chargées après hydrate, sans purge de la contrepartie persistée (injection de l'option si absente) → corrige la perte silencieuse / race. - Entité : constantes COUNTERPARTY_* (Assert\Choice + validation + getCounterpartyName) ; libellé FR du type déplacé du Domain vers le template. - PDF : cartouche conditionné sur le type (nom à l'intérieur), layout Dompdf-safe (largeurs de cellules, cartouche en bloc, nom long renvoyé à la ligne).
48 lines
1.5 KiB
PHP
48 lines
1.5 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Tests\Module\Logistique\Domain;
|
|
|
|
use App\Module\Commercial\Domain\Entity\Client;
|
|
use App\Module\Commercial\Domain\Entity\Supplier;
|
|
use App\Module\Logistique\Domain\Entity\WeighingTicket;
|
|
use PHPUnit\Framework\TestCase;
|
|
|
|
/**
|
|
* Couvre WeighingTicket::getCounterpartyName() (ERP-208) : nom du tiers affiché
|
|
* dans le cartouche du bon de pesée selon le type de contrepartie (RG-5.03).
|
|
*
|
|
* @internal
|
|
*/
|
|
final class WeighingTicketCounterpartyNameTest extends TestCase
|
|
{
|
|
public function testReturnsClientCompanyNameForClientCounterparty(): void
|
|
{
|
|
$client = new Client()->setCompanyName('Ferme du Pré');
|
|
$ticket = new WeighingTicket()->setCounterpartyType('CLIENT')->setClient($client);
|
|
|
|
self::assertSame('Ferme du Pré', $ticket->getCounterpartyName());
|
|
}
|
|
|
|
public function testReturnsSupplierCompanyNameForSupplierCounterparty(): void
|
|
{
|
|
$supplier = new Supplier()->setCompanyName('Coop Sud');
|
|
$ticket = new WeighingTicket()->setCounterpartyType('FOURNISSEUR')->setSupplier($supplier);
|
|
|
|
self::assertSame('Coop Sud', $ticket->getCounterpartyName());
|
|
}
|
|
|
|
public function testReturnsOtherLabelForOtherCounterparty(): void
|
|
{
|
|
$ticket = new WeighingTicket()->setCounterpartyType('AUTRE')->setOtherLabel('Particulier');
|
|
|
|
self::assertSame('Particulier', $ticket->getCounterpartyName());
|
|
}
|
|
|
|
public function testReturnsNullWhenNoCounterparty(): void
|
|
{
|
|
self::assertNull(new WeighingTicket()->getCounterpartyName());
|
|
}
|
|
}
|