<?php

use App\Services\ArtworkService;
use Illuminate\Pagination\LengthAwarePaginator;

beforeEach(function () {
    $this->artworksMock = Mockery::mock(ArtworkService::class);
    $this->artworksMock->shouldReceive('getFeaturedArtworks')
        ->andReturn(new LengthAwarePaginator(collect(), 0, 20, 1))
        ->byDefault();
    $this->artworksMock->shouldReceive('getLatestArtworks')
        ->andReturn(collect())
        ->byDefault();
    $this->app->instance(ArtworkService::class, $this->artworksMock);
});

it('GET /discover/rising returns 200', function () {
    $this->get('/discover/rising')
        ->assertStatus(200);
});

it('/discover/rising page contains Rising Now heading', function () {
    $this->get('/discover/rising')
        ->assertStatus(200)
        ->assertSee('Rising Now', false);
});

it('/discover/rising page includes the rising section pill as active', function () {
    $this->get('/discover/rising')
        ->assertStatus(200)
        ->assertSee('bg-sky-600', false);
});

it('GET /discover/trending still returns 200', function () {
    $this->get('/discover/trending')
        ->assertStatus(200);
});

it('home page still renders with rising section data', function () {
    $this->get('/')
        ->assertStatus(200);
});
