feat(tickets): add source_purchase_id to tickets and update related logic

This commit is contained in:
2026-07-28 16:10:37 -03:00
parent 8ab94ec61f
commit 1c870d9cfa
8 changed files with 69 additions and 2 deletions

View File

@@ -193,6 +193,12 @@ class TicketGeneratorServiceTest extends TestCase
$this->assertDatabaseCount('tickets', 2);
Event::assertDispatchedTimes(TicketsAvailable::class, 1);
$this->actingAs($this->user, 'sanctum')
->getJson("/api/tenants/{$this->tenant->codigo}/compras/{$purchase->id}")
->assertOk()
->assertJsonPath('data.tickets_count', 2)
->assertJsonPath('data.has_generated_tickets', true);
$purchase->markAsPaid();
$this->assertDatabaseCount('tickets', 2);
@@ -209,6 +215,7 @@ class TicketGeneratorServiceTest extends TestCase
$purchase->markAsPaid();
$this->assertDatabaseHas('tickets', [
'source_purchase_id' => $purchase->id,
'source_catalog_item_id' => $item->id,
'source_variant_id' => $variant->id,
]);
@@ -226,6 +233,12 @@ class TicketGeneratorServiceTest extends TestCase
$this->assertSame(Purchase::STATUS_PAID, $purchase->status);
$this->assertDatabaseCount('tickets', 0);
Event::assertNotDispatched(TicketsAvailable::class);
$this->actingAs($this->user, 'sanctum')
->getJson("/api/tenants/{$this->tenant->codigo}/compras/{$purchase->id}")
->assertOk()
->assertJsonPath('data.tickets_count', 0)
->assertJsonPath('data.has_generated_tickets', false);
}
public function test_paid_status_is_confirmed_when_ticket_maximum_use_date_was_reached(): void