Changed channel categories from DB-backed Category records to a backed PHP enum
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace Tests\Feature;
|
||||
|
||||
use App\Models\Category;
|
||||
use App\Enums\ChannelCategory;
|
||||
use App\Models\Channel;
|
||||
use App\Models\PlatformSetting;
|
||||
use App\Models\StreamKey;
|
||||
@@ -17,13 +17,12 @@ class CreatorChannelTest extends TestCase
|
||||
public function test_user_with_creator_access_can_create_one_channel_and_receives_one_time_stream_key(): void
|
||||
{
|
||||
$user = User::factory()->create(['can_create_channel' => true]);
|
||||
$category = Category::factory()->create();
|
||||
|
||||
$response = $this->actingAs($user)->post(route('creator.channel.store'), [
|
||||
'display_name' => 'Nyone Live',
|
||||
'slug' => 'nyone-live',
|
||||
'description' => 'Live builds and demos.',
|
||||
'category_id' => $category->id,
|
||||
'category' => ChannelCategory::Creative->value,
|
||||
]);
|
||||
|
||||
$response
|
||||
@@ -34,7 +33,7 @@ class CreatorChannelTest extends TestCase
|
||||
'user_id' => $user->id,
|
||||
'slug' => 'nyone-live',
|
||||
'display_name' => 'Nyone Live',
|
||||
'category_id' => $category->id,
|
||||
'category' => ChannelCategory::Creative->value,
|
||||
]);
|
||||
|
||||
$this->assertDatabaseCount(StreamKey::class, 1);
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace Tests\Feature;
|
||||
|
||||
use App\Enums\ChannelCategory;
|
||||
use App\Models\Broadcast;
|
||||
use App\Models\Channel;
|
||||
use App\Models\User;
|
||||
@@ -64,6 +65,25 @@ class DashboardTest extends TestCase
|
||||
);
|
||||
}
|
||||
|
||||
public function test_home_page_exposes_translated_channel_category_labels(): void
|
||||
{
|
||||
config(['app.locale' => 'es']);
|
||||
|
||||
Channel::factory()->create([
|
||||
'is_live' => true,
|
||||
'category' => ChannelCategory::Music,
|
||||
]);
|
||||
|
||||
$this->get(route('home'))
|
||||
->assertOk()
|
||||
->assertInertia(fn (Assert $page) => $page
|
||||
->component('welcome')
|
||||
->where('liveChannels.0.category.value', ChannelCategory::Music->value)
|
||||
->where('liveChannels.0.category.label', __('Music', [], 'es'))
|
||||
->where('categories', fn ($categories) => $categories->firstWhere('value', ChannelCategory::Music->value)['label'] === __('Music', [], 'es')),
|
||||
);
|
||||
}
|
||||
|
||||
public function test_creator_dashboard_exposes_channel_display_media_props(): void
|
||||
{
|
||||
$user = User::factory()->create();
|
||||
@@ -101,7 +121,7 @@ class DashboardTest extends TestCase
|
||||
'display_name' => $channel->display_name,
|
||||
'slug' => $channel->slug,
|
||||
'description' => $channel->description,
|
||||
'category_id' => $channel->category_id,
|
||||
'category' => $channel->category?->value,
|
||||
'thumbnail' => UploadedFile::fake()->image('thumbnail.jpg', 1280, 720),
|
||||
])
|
||||
->assertRedirect()
|
||||
@@ -131,7 +151,7 @@ class DashboardTest extends TestCase
|
||||
'display_name' => $channel->display_name,
|
||||
'slug' => $channel->slug,
|
||||
'description' => $channel->description,
|
||||
'category_id' => $channel->category_id,
|
||||
'category' => $channel->category?->value,
|
||||
'thumbnail' => UploadedFile::fake()->create('thumbnail.txt', 8, 'text/plain'),
|
||||
])
|
||||
->assertRedirect(route('dashboard'))
|
||||
|
||||
Reference in New Issue
Block a user