<?php

namespace Tests\Unit\Services\Keywords;

use App\Services\Keywords\AiKeywordSeedBuilder;
use App\Services\Keywords\ProductKeywordParser;
use Laravel\Ai\StructuredAnonymousAgent;
use Tests\TestCase;

class AiKeywordSeedBuilderTest extends TestCase
{
    public function test_it_returns_per_product_ai_seeds(): void
    {
        config(['google-ads.ai_seed_generation' => true]);

        StructuredAnonymousAgent::fake([
            ['products' => [[
                'index' => 1,
                'seeds' => ['womens biker jacket', 'faux leather moto jacket'],
            ]]],
        ]);

        $result = (new AiKeywordSeedBuilder(new ProductKeywordParser))->build(
            'Marshalls',
            'Women',
            'Jackets',
            [[
                'name' => 'Classic Biker Style Jacket',
                'product_keywords' => [
                    'primary' => 'womens biker jacket',
                ],
            ]],
        );

        $this->assertSame(['womens biker jacket', 'faux leather moto jacket'], $result['seeds']);
        $this->assertSame(['womens biker jacket', 'faux leather moto jacket'], $result['by_product'][0]);
    }
}
