=== ETAPA 5: SERVICES DE NEGOCIO TESTS === --- T5.1 StateMachine --- PASS T5.1.01 allow + canTransition true PASS T5.1.02 canTransition false para nao registrada PASS T5.1.03 transition executa hooks PASS T5.1.04 transition invalida lanca excecao PASS T5.1.05 getAllowedTransitions --- T5.2 OrderStateMachine --- PASS T5.2.01 pending -> confirmed permitido PASS T5.2.02 pending -> cancelled permitido PASS T5.2.03 pending -> delivered bloqueado PASS T5.2.04 delivered -> disputed permitido PASS T5.2.05 completed -> pending bloqueado --- T5.3 EventDispatcher --- PASS T5.3.01 dispatch persiste no event_store PASS T5.3.02 dispatch notifica listeners sincronos --- T5.4 IdempotencyGuard --- PASS T5.4.01 acquire retorna true primeira vez PASS T5.4.02 acquire retorna false segunda vez PASS T5.4.03 release permite novo acquire --- T5.5 StockService --- PASS T5.7.01 getAvailable retorna quantity - reserved PASS T5.7.02 reserve incrementa reserved PASS T5.7.03 reserve com estoque insuficiente lanca excecao PASS T5.7.04 release decrementa reserved PASS T5.7.08 inbound incrementa quantity --- T5.8 LedgerService --- PASS T5.8.01 record cria transaction + 2 entries PASS T5.8.02 double-entry balanceado (soma = 0) PASS T5.8.04 recordSale cria 2 transacoes --- T5.5 OrderService --- PASS T5.5.01 createFromCheckout cria pedido PASS T5.5.07 changeStatus pending->confirmed PASS T5.5.08 changeStatus pending->delivered lanca excecao PASS T5.5.09 createSplits agrupa por seller --- T5.6 PaymentService --- PASS T5.6.01 processPayment PIX cria transaction com qr_code PASS T5.6.02 processPayment Credito cria transaction authorized --- T5.10 FiscalService --- PASS T5.10.01 emitNFe cria documento draft PASS T5.10.05 cancel com prazo expirado lanca excecao PASS T5.10.06 emitCCe max 20 por documento --- T5.11 ReturnService --- PASS T5.11.03 request em pedido nao delivered lanca excecao --- T5.12 AdsService --- PASS T5.12.03 recordClick fraude 3+ clicks mesmo IP --- T5.12 Gateway --- PASS T5.12.gw MercadoPagoGateway charge PIX retorna qr_code PASS T5.12.gw MercadoPagoGateway mapWebhookToStatus === RESULTADO === Total: 36 | PASS: 36 | FAIL: 0 ALL TESTS PASSED!