feat(tickets): group user tickets by event
This commit is contained in:
@@ -2,22 +2,23 @@
|
||||
|
||||
namespace Tests\Feature\Ticket;
|
||||
|
||||
use App\Shared\Attachable\Enums\AttachmentType;
|
||||
use App\Shared\Attachable\Models\Attachment;
|
||||
use App\Domains\Core\Auth\Models\User;
|
||||
use App\Domains\Commerce\Catalog\Enums\CatalogItemType;
|
||||
use App\Domains\Commerce\Catalog\Models\Attribute;
|
||||
use App\Domains\Commerce\Catalog\Models\CatalogItem;
|
||||
use App\Domains\Commerce\Catalog\Models\Inventory;
|
||||
use App\Domains\Commerce\Catalog\Services\CatalogService;
|
||||
use App\Domains\Ticketing\Event\Models\EventDate;
|
||||
use App\Domains\Commerce\Purchase\Models\Purchase;
|
||||
use App\Shared\Enums\FieldType;
|
||||
use App\Domains\Core\Auth\Models\User;
|
||||
use App\Domains\Core\Tenant\Models\Tenant;
|
||||
use App\Domains\Ticketing\Event\Models\Event as TicketEvent;
|
||||
use App\Domains\Ticketing\Event\Models\EventDate;
|
||||
use App\Domains\Ticketing\Ticket\Enums\ValidityTimeType;
|
||||
use App\Domains\Ticketing\Ticket\Exceptions\TicketGenerationException;
|
||||
use App\Domains\Ticketing\Ticket\Models\ValidityTime;
|
||||
use App\Domains\Ticketing\Ticket\Services\TicketGeneratorService;
|
||||
use App\Shared\Attachable\Enums\AttachmentType;
|
||||
use App\Shared\Attachable\Models\Attachment;
|
||||
use App\Shared\Enums\FieldType;
|
||||
use Illuminate\Database\Eloquent\Collection as EloquentCollection;
|
||||
use Illuminate\Database\QueryException;
|
||||
use Illuminate\Foundation\Testing\RefreshDatabase;
|
||||
@@ -79,6 +80,26 @@ class TicketGeneratorServiceTest extends TestCase
|
||||
]);
|
||||
}
|
||||
|
||||
public function test_it_preserves_the_catalog_items_event_on_the_ticket(): void
|
||||
{
|
||||
$event = TicketEvent::query()->create([
|
||||
'tenant_code' => $this->tenant->codigo,
|
||||
'slug' => 'original-event',
|
||||
'title' => 'Original event',
|
||||
'published_at' => now(),
|
||||
]);
|
||||
$item = $this->createTicketableItem('event-ticket');
|
||||
$item->update(['event_id' => $event->id]);
|
||||
|
||||
$ticket = $this->service->generate($item->fresh(), $this->user)->sole();
|
||||
|
||||
$this->assertSame($event->id, $ticket->event_id);
|
||||
$this->assertDatabaseHas('tickets', [
|
||||
'id' => $ticket->id,
|
||||
'event_id' => $event->id,
|
||||
]);
|
||||
}
|
||||
|
||||
public function test_it_rejects_an_item_without_tickets_enabled(): void
|
||||
{
|
||||
$item = $this->createTicketableItem('disabled');
|
||||
|
||||
Reference in New Issue
Block a user