42 lines
1.2 KiB
PHP
42 lines
1.2 KiB
PHP
<?php
|
|
|
|
use App\Models\Event;
|
|
use App\Models\User;
|
|
|
|
test('public event show returns event info without password', function () {
|
|
$user = User::factory()->create();
|
|
Event::create([
|
|
'user_id' => $user->id,
|
|
'name' => 'Test Event',
|
|
'slug' => 'test-event',
|
|
'is_active' => true,
|
|
'max_file_size_mb' => 500,
|
|
'allowed_extensions' => ['mp4', 'mov'],
|
|
'require_password' => true,
|
|
'upload_password' => 'secret',
|
|
]);
|
|
|
|
$response = test()->getJson('/api/events/test-event');
|
|
|
|
$response->assertOk();
|
|
$response->assertJsonPath('name', 'Test Event');
|
|
$response->assertJsonPath('slug', 'test-event');
|
|
$response->assertJsonPath('require_password', true);
|
|
$response->assertJsonPath('has_password', true);
|
|
$response->assertJsonMissing(['upload_password']);
|
|
});
|
|
|
|
test('public event show returns 404 for inactive event', function () {
|
|
$user = User::factory()->create();
|
|
Event::create([
|
|
'user_id' => $user->id,
|
|
'name' => 'Inactive',
|
|
'slug' => 'inactive-event',
|
|
'is_active' => false,
|
|
]);
|
|
|
|
$response = test()->getJson('/api/events/inactive-event');
|
|
|
|
$response->assertStatus(404);
|
|
});
|