<?php

namespace Tests\Unit;

use Tests\TestCase;

use App\Models\Page;
use App\Models\EmbedVideo;
use App\Models\VideoText;

class VideoTextTest extends TestCase
{
    public function test_a_video_text_belongs_to_an_embed_video()
    {
        $video_text = VideoText::factory()->create();
        $this->assertNotNull($video_text->embedVideo);
        $this->assertInstanceOf(EmbedVideo::class, $video_text->embedVideo);

        $embed_video = $video_text->embedVideo;
        $this->assertNotNull($embed_video->videoTexts);
        $this->assertEquals(1, $embed_video->videoTexts->count());
        $this->assertEquals($video_text->id, $embed_video->videoTexts->first()->id);
    }

    public function test_a_video_texts_link_can_be_parsed()
    {
        $page = Page::factory()->create();
        $page->publish();
        $this->assertInstanceOf(Page::class, $page);
        $this->assertNotNull($page->publishedVersion);

        $video_text = VideoText::factory()->create([
            'link' => $page->id,
        ]);

        $this->assertNotNull($page->full_slug);
        $this->assertNotNull($video_text->link);

        $this->assertEquals('/'.$page->full_slug, $video_text->link);
    }
}
